ich habe gleich mehrere kleine Probleme...
1.) ich habe folgende Datenbankabfrage:
With ActiveSheet.QueryTables.Add(Connection:= _
"ODBC;DSN=Microsoft Access-Datenbank;DBQ=C:\DB1.mdb; DefaultDir=C:\" _
& ";DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;" _
, Destination:=Range("A1"))
.CommandText = Array( _
"SELECT Tabelle.TabellenID, Tabelle.FragebogenKategorie, " _
& "Tabelle.FrageNummer, Tabelle.Bewertung" & Chr(13) & "" & Chr(10) _
& "FROM `C:\DB1`.Tabelle Tabelle" & Chr(13) & "" & Chr(10) _
& "WHERE (Tabelle.TabellenehmerID=" & sTabellenehmer & ")" _
& "AND (Tabelle.FragebogenKategorie=" & nX & ")" _
& Chr(13) & "" & Chr(10) & "ORDER BY Tabelle.FrageNummer")
.FieldNames = True
.PreserveFormatting = True
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = True
.SaveData = True
.AdjustColumnWidth = True
.PreserveColumnInfo = True
.Refresh BackgroundQuery = False
End With
Nun möchte ich den festen Pfad "C:\DB1.mdb" durch einen variablen aus einer INI-Datei bestimmen
Dieser Pfad steht in der Variablen "dbpfad"
ist dies möglich?
2.) bei jedem durchlauf erscheint der Dialog "Datenquelle auswählen" - da dies nicht auf allen getesteten rechnern geschieht, ist meine Vermutung, das MS Query fehlt, ist diese annahme richtig?
kann man die oben stehende abfrage so weit ändern, das Query nicht installiert sein muss?
ohne Query führt das makro zum "allgemeinen ODBC-Fehler"
3.) wie kann man in excel einzelne zeilen verankern, so das z.b. die Überschriften immer sichtbar bleiben, auch wenn man nach unten scrollt?
4.) kann man überprüfen, ob eine verbindung zur db auch geglückt ist?
die anweisung oben wird auch ausgeführt, wenn die db gar nicht existiert...
über eine oder mehrere lösungen würde ich mich sehr freuen!