Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1692to1696
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

SQL Select * from minkl. Spaltennamen

SQL Select * from minkl. Spaltennamen
17.05.2019 09:57:15
Lx177
Hallo Zusammen,
ich habe folgendes Problem.
Derzeit ziehe ich mittels einer ADODB.Connection Inhalte einer SQL-View in eine Excel-Datei.
mein code:

Private Sub Download(control As IRibbonControl)
Dim rs As Object
Set rs = CreateObject("ADODB.Recordset")
Dim sqlstr As String
sqlstr = "SELECT * from myTable"
Call connectDatabase
rs.Open sqlstr, DBCONT
ThisWorkbook.Sheets(3).Range("B13").CopyFromRecordset rs
rs.Close
Call closeDatabase
End Sub
Das Problem ist, dass nur die Tabelleninhalte gezogen werden. Ich benötige zusätzlich noch die dazugehörigen Spaltenüberschriften.
Wie kann ich das erreichen?
Danke und viele Grüße
lx177

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Mache dir noch eine...
17.05.2019 10:06:39
Case
Hallo, :-)
... Schleife: ;-)
For intCount = 0 To rs.Fields.Count - 1
Cells(12, intCount + 1).Value = rs.Fields(intCount).Name
Next intCount
Servus
Case

AW: Mache dir noch eine...
17.05.2019 14:21:57
Lx177
Servus Case,
danke für die Antwort! Sieht jetzt so aus:
Private Sub Download(control As IRibbonControl)
Dim rs As Object
Set rs = CreateObject("ADODB.Recordset")
Dim sqlstr As String
sqlstr = "SELECT * from myTable"
Call connectDatabase
rs.Open sqlstr, DBCONT
ThisWorkbook.Sheets(3).Range("B13").CopyFromRecordset rs
For intCount = 0 To rs.Fields.Count - 1
Cells(12, intCount + 1).Value = rs.Fields(intCount).Name
Next intCount
rs.Close
Call closeDatabase
End Sub
Nur leider passiert nichts.
Ist die Schleife an der Stelle richtig?
Danke und Gruß
lx177
Anzeige
AW: Mache dir noch eine...
17.05.2019 14:27:26
Lx177
Servus Case,
danke für die Antwort! Sieht jetzt so aus:
Private Sub Download(control As IRibbonControl)
Dim rs As Object
Set rs = CreateObject("ADODB.Recordset")
Dim sqlstr As String
sqlstr = "SELECT * from myTable"
Call connectDatabase
rs.Open sqlstr, DBCONT
ThisWorkbook.Sheets(3).Range("B13").CopyFromRecordset rs
For intCount = 0 To rs.Fields.Count - 1
Cells(12, intCount + 1).Value = rs.Fields(intCount).Name
Next intCount
rs.Close
Call closeDatabase
End Sub
Nur leider passiert nichts.
Ist die Schleife an der Stelle richtig?
Danke und Gruß
lx177
Anzeige
AW: Mache dir noch eine...
17.05.2019 14:34:53
Lx177
Servus Case,
danke für die Antwort! Sieht jetzt so aus:
Private Sub Download(control As IRibbonControl)
Dim rs As Object
Set rs = CreateObject("ADODB.Recordset")
Dim sqlstr As String
sqlstr = "SELECT * from myTable"
Call connectDatabase
rs.Open sqlstr, DBCONT
ThisWorkbook.Sheets(3).Range("B13").CopyFromRecordset rs
For intCount = 0 To rs.Fields.Count - 1
Cells(12, intCount + 1).Value = rs.Fields(intCount).Name
Next intCount
rs.Close
Call closeDatabase
End Sub
Nur leider passiert nichts.
Ist die Schleife an der Stelle richtig?
Danke und Gruß
lx177
Anzeige
AW: Mache dir noch eine...
17.05.2019 14:46:06
Lx177
Servus Case,
danke für die Antwort! Sieht jetzt so aus:
Private Sub Download(control As IRibbonControl)
Dim rs As Object
Set rs = CreateObject("ADODB.Recordset")
Dim sqlstr As String
sqlstr = "SELECT * from myTable"
Call connectDatabase
rs.Open sqlstr, DBCONT
ThisWorkbook.Sheets(3).Range("B13").CopyFromRecordset rs
For intCount = 0 To rs.Fields.Count - 1
Cells(12, intCount + 1).Value = rs.Fields(intCount).Name
Next intCount
rs.Close
Call closeDatabase
End Sub
Nur leider passiert nichts.
Ist die Schleife an der Stelle richtig?
Danke und Gruß
lx177
Anzeige
AW: Mache dir noch eine...
17.05.2019 14:55:10
Lx177
Servus Case,
danke für die Antwort! Sieht jetzt so aus:
Private Sub Download(control As IRibbonControl)
Dim rs As Object
Set rs = CreateObject("ADODB.Recordset")
Dim sqlstr As String
sqlstr = "SELECT * from myTable"
Call connectDatabase
rs.Open sqlstr, DBCONT
ThisWorkbook.Sheets(3).Range("B13").CopyFromRecordset rs
For intCount = 0 To rs.Fields.Count - 1
Cells(12, intCount + 1).Value = rs.Fields(intCount).Name
Next intCount
rs.Close
Call closeDatabase
End Sub
Nur leider passiert nichts.
Ist die Schleife an der Stelle richtig?
Danke und Gruß
lx177
Anzeige
AW: Mache dir noch eine...
18.05.2019 08:34:30
Luschi
Hallo Lx177,
bei mir sieht diese Schleife so aus:

With ThisWorkbook.Sheets(3)
For intCount = 0 To rs.Fields.Count - 1
.Cells(12, intCount + 1).Value = rs.Fields(intCount).Name
Next intCount
.Range("B13").CopyFromRecordset rs
End With
Gruß von Luschi
aus klein-Paris
PS: beachte die Punkte vor Cells und Range, die stellen den Bezug zur With-Klauses her - also zu 'ThisWorkbook.Sheets(3)'

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige