habe auf den alten Eintrag nicht mehr antworten können.
Die von Dir angegebene Zeile .commandtype hat es leider nicht gegeben. Habe Sie jedoch trotzdem vor commandtext angefügt. Eine Fehlermeldung gab es nicht, so dass das Statement zumindest möglich ist. Sobald ich allerdings wieder über die Zeichenzahl von 255 gehe steigt Excel nach wie vor mit Typen unverträglich aus. Hat also leider nicht funktioniert.
Hier nochmal das komplette Statement zur Abfrage:
With ActiveSheet.ListObjects.Add(...).QueryTable
.CommandType = xlCmdSql
.CommandText = Array("sql statement")
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = False
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = False
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.ListObject.DisplayName = "O2Menge"
.Refresh BackgroundQuery:=False
End With