PDA

Vollständige Version anzeigen : Fehler bei Excel Export


jelte
25.05.2007, 08:53
Hallo Leute !

Ich versuche jetzt schon seit einiger Zeit den verdammt simplen Excel Export per DoCmd.TransferSpreadsheet acExport...
Nur stürzt Access bei der Code ausführung immer komplett ab, ohne Fehlermeldung. Früher war es kein Problem mit diesem Code zu Exportieren, nur trat irgendwann der Fehler auf und ich musste immer über ein Makro Exportieren, da der Dateiname flexible sein muss. Kann es sein, dass man für TransferSpreadsheet einen Verweis aktivieren muss?
Export Library oder MS Office Excel Objekt Library ?
Welche Probleme könnten sonst noch bestehen, der Code ist schon richtig bei mir, das Problem muss woanders liegen...

Jemand ne Idee?

Eine Lösung über Excel.Application mit einem aus SQL Code generierten Recordset wäre auch Klasse ! Wenn das denn funktioniert....

Danke schonmal...

Fred_BS
25.05.2007, 09:01
Hallo,

an ein Verweisproblem mag ich da nicht an erster Stelle denken. Was exportierst Du da - eine Abfrage, eine Tabelle? Funktioniert der "manuelle" Zugriff auf die Daten? Wie lautet die komplette Befehlszeile? Ein paar mehr Infos wären sinnvoll.
Ein Export direkt in eine Excel-Datei ist natürlich auch möglich, da dürfte die Forumssuche massenhaft Hits liefern...

Gruß
Fred

jelte
25.05.2007, 09:32
Ich Exporiere eine Abfrage, manueller Zugriff klappt, lasse mir die Daten auch vorm Export anzeigen...

Habe meinen Code jetzt folgendermaßen geändert:
Ich erstelle aus dem SQL Code eine temp Abfrage, diese lasse ich per TransferSpreadsheet Exportieren:

Const tmpAbfrage = "tmpAbfrage"

Dim sSQL As String
Dim qdf As DAO.QueryDef, rs As DAO.Recordset

Set rs = CurrentDb.OpenRecordset(Me.txtSQL)
rs.MoveFirst
Do While Not rs.EOF
' Erstelle gefilterte Abfrage
sSQL = Me.txtSQL
On Error Resume Next
DoCmd.DeleteObject acQuery, tmpAbfrage
On Error GoTo 0
Set qdf = CurrentDb.CreateQueryDef(tmpAbfrage, sSQL)

' Export der Abfrage
DoCmd.TransferSpreadsheet acExport, , tmpAbfrage, _
"D:\File.xls", True, ""
rs.MoveNext
Loop
rs.Close

Steffen0815
25.05.2007, 10:09
Hallo,
ja und nun, funktioniert es oder nicht :rolleyes:

jelte
25.05.2007, 17:35
Ja habs gelöst, musste leider einen kleinen Umweg gehen, da es auf die einfache weise nicht klappt..
Ich übergebe jetzt meinen SELECT an ein recordset, welches ich in dann eine temporäre abfrage packe und die dann leider mit nem makro an excel übergeben muss... Echt Shit, scheint irgendwas falsch zu sein bei mir, sonst würde TransferSpreadsheet bei mir klappen..

Werde es schom raus finden.. Den Code poste ich Dienstag, hab jetzt erstmal langes WE..

Danke für die schnelle hilfe...!