ich habe eine Abfrage auf eine externe Datenquelle gebastelt(AS400) und habe über den Query Assistenten bereit Daten gefiltert!
Jetzt ist meine Vision, dass ich im Kopf des Blatte Bestimmte Kriterien habe,
wie zum Beispiel ein Jahr oder ein Monat und diese Zellen als "Filterkriterien"
herangezogen werden!! Der Makrorekorder bringt mich da nicht wirklich weiter, weil zwar die Vebindungsdaten aufgezeichnet werden, aber nicht die "Filterkriterien" Hier mal der Code aus dem Makrorekorder, vieleicht hat ja jemand eine Idee!
Die Bibliothek auf der AS400 heißt: CTRL_HI05
und die Datei heißt: SD_STAT06
das Monatsfeld in der Datei heißt MMX
so und hier nun wirklich der Code:
With ActiveSheet.QueryTables.Add(Connection:=Array(Array( _
"ODBC;DRIVER={Client Access ODBC Driver (32-bit)};UID=TR142ROESE;SYSTEM=UNNASPED;DBQ=QGPL CTRL_HI05;DFTPKGLIB=QGPL;XLATEDLL=;LANGUAGE" _
), Array( _
"ID=ENU;SORTTABLE=;TRACEFILENAME=C:\Dokumente und Einstellungen\Gellermann\Eigene Dateien\IBM\Client Access\Service\Trace-Dateie" _
), Array( _
"n;PKG=QGPL/DEFAULT(IBM),2,0,1,0,512;QAQQINILIB=;DESC=Client Access Express ODBC-Datenquelle;TRANSLATE=1;" _
)), Destination:=Range("A1"))
.CommandText = Array( _
"SELECT SD_STAT06.FA, SD_STAT06.NDL, SD_STAT06.KZ, SD_STAT06.KST_Z, SD_STAT06.LAND, SD_STAT06.REL, SD_STAT06.REL_BEZ, SD_STAT06.PART_NR, SD_STAT06.PARTNER, SD_STAT06.SDG_NR, SD_STAT06.A_KDNR, SD_STAT06" _
, _
".A_NAME, SD_STAT06.A_LAND, SD_STAT06.A_PLZ, SD_STAT06.A_ORT, SD_STAT06.A_STR1, SD_STAT06.A_STR2, SD_STAT06.A_LAND_ABW, SD_STAT06.A_PLZ_ABW, SD_STAT06.A_ORT_ABW, SD_STAT06.E_KDNR, SD_STAT06.E_NAME, SD_" _
, _
"STAT06.E_LAND, SD_STAT06.E_PLZ, SD_STAT06.E_ORT, SD_STAT06.E_STR1, SD_STAT06.E_STR2, SD_STAT06.E_LAND_ABW, SD_STAT06.E_PLZ_ABW, SD_STAT06.E_ORT_ABW, SD_STAT06.F_KDNR, SD_STAT06.F_NAME, SD_STAT06.F_LAN" _
, _
"D, SD_STAT06.F_PLZ, SD_STAT06.F_ORT, SD_STAT06.F_STR1, SD_STAT06.F_STR2, SD_STAT06.FRK_ORI, SD_STAT06.FRK_TXT, SD_STAT06.A_BORDNR, SD_STAT06.E_BORDNR, SD_STAT06.JJJJX, SD_STAT06.MMX, SD_STAT06.TTX, SD" _
, _
"_STAT06.WOTAG, SD_STAT06.KW, SD_STAT06.A_REL, SD_STAT06.E_REL, SD_STAT06.NV_FZG, SD_STAT06.SDG, SD_STAT06.KG_TATS, SD_STAT06.KG_FRPF, SD_STAT06.KG_FR_ERF, SD_STAT06.KGFR_KD, SD_STAT06.KGFR_SPED, SD_ST" _
,,)
.Name = "Abfrage von SD_STAT06_4"
.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:=False
End With
End Sub
Sehr merkwürdig find ich schon, dass der Teil ab " .CommandText = Array( _"
schon "rot/falsch" dargestellt wird, obwohl aufgezeichnet!
Vieleicht hat ja jemand eine Idee!
Danke
tor