Ziehen Spaltennamen in Excel aus SQL Abfrage

Ich bin mit Excel zu ziehen Daten aus einer SQL-db. Ich benutzt den code aus einem anderen, SO Frage, und es funktioniert gut. Jetzt will ich ziehen in den Spaltennamen aus einer Tabelle neben der eigentlichen Tabelle. Ich habe herausgefunden, dass ich konnte die Namen verwenden Für Jede fld-Schleife. Aber es ist immer noch die Frage, bevölkern Sie Sie horizontal in einer Zeile im Excel die Anzahl der Spalten ändern kann - also dachte ich, ich bräuchte eine weitere For-each-Schleife auch oder etwas ähnliches.

Sub GetDataFromADO()

'Declare variables'
    Set objMyConn = New ADODB.Connection
    Set objMyCmd = New ADODB.Command
    Set objMyRecordset = New ADODB.Recordset

'Open Connection'
    objMyConn.ConnectionString = "Provider=SQLOLEDB;Data Source=localhost;User ID=abc;Password=abc;"
    objMyConn.Open

'Set and Excecute SQL Command'
    Set objMyCmd.ActiveConnection = objMyConn
    objMyCmd.CommandText = "select * from myTable"
    objMyCmd.CommandType = adCmdText
    objMyCmd.Execute

'Loop Names'
    ' WHAT TO DO HERE????'

'Open Recordset'
    Set objMyRecordset.ActiveConnection = objMyConn
    objMyRecordset.Open objMyCmd

'Copy Data to Excel'
    ActiveSheet.Range("A1").CopyFromRecordset (objMyRecordset)

End Sub
  • Willst du nicht die Header, gefüttert mit den Daten? Die Daten beginnen in A1, aber Sie scheinen zu haben, den header-Bereich zu A4.
  • ja du hast Recht - schlecht kopieren und einfügen auf meinem Teil.
Schreibe einen Kommentar