Quantcast
Channel: Microsoft Access Forum
Viewing all articles
Browse latest Browse all 880

TransferSpreadsheet funktioniert nicht.

$
0
0

Hallo zusammen

Ich brauche Eure Hilfe, da ich nicht mehr weiter komme. Ich möchte Daten aus der DB in ein Excel-Sheet exportieren. Das mache ich mit untenstehendem Code:

Sub test()
'Supercode

950 db.CreateQueryDef strNameTempQuery, strSQL
970 db.QueryDefs.Refresh
980 DoEvents

990 MsgBox "Blablabla.", vbInformation + vbOKOnly, "Supertitel"
Dim qrf As QueryDef
For Each qrf In db.QueryDefs
Debug.Print qrf.Name
Next
    ' Daten exportieren
1000 DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, strNameTempQuery, strFileName

'Weiterer Supercode
End Sub

Zwischen den Zeilen 950 und 1000 steht kein weiterer Code. Die Variablen strNameTempQuery, strSQL und strFileName sind immer mit dem richtigen Wert gefüllt.

Jetzt habe ich eine Prozedur, welche diese 'Test'-Prozedur aufruft und mir die Daten wie gewünscht in ein Excel-Sheet abfüllt.

Das Problem ist, dass ich eine andere Prozedur habe, welche diese 'Test'-Prozedur ebenfalls aufruft, einzelne Codezeilen zu beginn nicht aufruft, mir dann aber bei TransferSpreadsheet diesen Fehler bringt:

? err.Number
3011
? err.Description
The Microsoft Access database engine could not find the object 'TempExport'. Make sure the object exists and that you spell its name and the path name correctly. If 'TempExport' is not a local object, check your network connection or contact the server administrator.

Ich frage ja gleich vor der Ausführung den Namen aller Queries ab und dort ist die 'TempExport' vorhanden! Also von der einen Prozedur aufgerufen funktioniert alles (auch mehrfach, hatte nie probleme), von der anderen Aufgerufen funktioniert es nicht, obwohl alle Parameter den richtigen Wert haben und die Abfrage existiert.

Decompile und alles in neue DB importiert hat keine Verbesserung gebracht.

Kann mir jemand hier weiterhelfen?


Danke und Gruss Thomas


Viewing all articles
Browse latest Browse all 880