Supportnet / Forum / Tabellenkalkulation
Probleme mit Excel ODBC Abfrage
Frage
Hallo zusammen,
habe ein Problem mit einer Excel Abfrage:
Fehler: Laufzeitfehler '1004'
Allgemeiner ODBC Fehler
Abfrage bleibt bei: Refresh BackgroundQuery:=False stecken!
Hat aber schon funktioniert!
Hier der Quellcode
Sub ABFRAGE_ARTIKELPOSTEN()
'***********************************************************************************************************************
'Variablen deklarieren
Dim i, j As Integer
'***********************************************************************************************************************
'Variablen initialisieren
i = 2
j = 2 'wird unten immer wieder neu initialisiert
'***********************************************************************************************************************
'ODBC Abfrage der Artikelposten
'Ver 1.6 in der Abfrage die Bedingung von 2001-12-31 auf 2002-12-31
Sheets("ARTIKELPOSTEN").Select
Cells.Delete
With ActiveSheet.QueryTables.Add(Connection:=Array(Array( _
"ODBC;DSN=Sample C/ODBC 32 bit;CSF=Yes;SName=NAVISION;NType=TCP;Database=NAVISION;PPath=C:\Programme\Microsoft Business Solutions-Navision\Client;OPT=Text;IT=a-z,A-Z" _
), Array( _
",0-9,_;QTYesNo=Yes;RO=Yes;CC=Yes;BE=Yes;UID=xx;PWD=xxxx;CN=xxx;SERVER=N;" _
)), Destination:=Range("A1"))
.CommandText = Array( _
"SELECT Artikelposten.Belegnr_, Artikelposten.Buchungsdatum, Artikelposten.Artikelnr_, Artikelposten.Herkunftsnr_, Artikelposten.Fakturierte_Menge, Artikelposten.Betrag" & Chr(13) & "" & Chr(10) & "FROM Artikelposten Artikelposte" _
, _
"n" & Chr(13) & "" & Chr(10) & "WHERE (Artikelposten.Belegnr_>='LV000000') AND (Artikelposten.Buchungsdatum>{d '2002-12-31'}) AND (Artikelposten.Postenart='Verkauf')" _
)
.Name = "Abfrage von ODBC"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = True
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:=True
End With
Danke