Hallo zusammen,
Ich bin gerade dabei die Datenfelder einer Tabelle aus einer Access Datenbank nach Excel zu exportieren. Das funktioniert auch aber nur einmal. Ich habe glaube ich ein Problem mit dem Datensatzzeiger das der am Ende stehen bleibt.
Bei der Tabelle handelt es sich um Nachname, Vorname, Strasse und Hausnummer. Mein Code sieht bisher so aus:
Also wenn Access gerade gestartet ist und ich auf den Button zum Auslösen des Codes drück funktioniert das. Schliesse ich dann das Excel Fenster und drücke erneut auf den Button dann passiert nix ausser das Excel nochmal geöffnet wird. Aber es werden keine Daten mehr übertragen. Erst wenn ich Access wieder neu starte gehts.
Kann mir bitte jemand helfen ??
Schönen Gruß,
Thomas
Ich bin gerade dabei die Datenfelder einer Tabelle aus einer Access Datenbank nach Excel zu exportieren. Das funktioniert auch aber nur einmal. Ich habe glaube ich ein Problem mit dem Datensatzzeiger das der am Ende stehen bleibt.
Bei der Tabelle handelt es sich um Nachname, Vorname, Strasse und Hausnummer. Mein Code sieht bisher so aus:
Visual Basic-Quellcode
- Dim excel2010 As Object
- Dim workbook As Excel.workbook
- Dim zeile1 As Long
- Dim spalte As Long
- Set excel2010 = CreateObject("Excel.Application")
- With excel2010
- .Visible = True
- .Application.WindowState = xlMaximized
- Set workbook = .Workbooks.Add
- End With
- Dim ADOCnn As New ADODB.Connection
- Dim ADOTab As New ADODB.Recordset
- Dim ADOField As ADODB.field
- Dim zeile As Long
- ADOCnn.Provider = "Microsoft.ACE.OLEDB.12.0"
- ADOCnn.Open (ActiveWorkbook.Path & "\adressen.accdb")
- ADOTab.Open "tbl_Namen", ADOCnn, adOpenDynamic, adLockOptimistic
- zeile = ActiveSheet.UsedRange.Rows.Count + 1
- While Not ADOTab.EOF
- Cells(zeile, 1) = ADOTab!Nachname
- Cells(zeile, 2) = ADOTab!Vorname
- Cells(zeile, 3) = ADOTab!Strasse
- Cells(zeile, 4) = ADOTab!Hausnummer
- zeile = zeile + 1
- For zeile1 = 2 To ActiveSheet.UsedRange.Rows.Count Step 2
- For spalte = 1 To ActiveSheet.UsedRange.Columns.Count
- Cells(zeile1, spalte).Interior.Color = RGB(220, 220, 220)
- Next
- Next
- ADOTab.MoveNext
- Wend
- ADOCnn.Close
- Set ADOCnn = Nothing
- Set excel2010 = Nothing
Also wenn Access gerade gestartet ist und ich auf den Button zum Auslösen des Codes drück funktioniert das. Schliesse ich dann das Excel Fenster und drücke erneut auf den Button dann passiert nix ausser das Excel nochmal geöffnet wird. Aber es werden keine Daten mehr übertragen. Erst wenn ich Access wieder neu starte gehts.
Kann mir bitte jemand helfen ??
Schönen Gruß,
Thomas