Um den Fehler einzugrenzen, würde ich das
SQL-Statement vor dem Open kopieren und prüfen, ob das grundsätzlich korrekt ist. Am Besten in einem passenden
SQL-Editor ansehen und laufen lassen.
Wenn das funktioniert, vermute ich das Problem am Treiber (wie schon mehrfach vermutet wird) oder es gibt ein Initialisierungsproblem.
Was mir gerade noch einfällt:
Du weist die Connection in der Routine zu. Ist die Connection denn aktiv? Meistens werden Connections durch ein auszuführendes
Query zwar implizit aktiv, aber erstens geht es hier um
Access und zweitens um einen
ODBC-Treiber. Es könnte also durchaus sein, dass die Connection noch gar nicht bereit, bzw. nicht schnell genug bereit ist. Das würde dann auch erklären, warum es nur beim ersten Durchlauf Probleme gibt.