AW: ADODB zweiter Wert Überschrift fehlt, warum?
21.04.2014 21:25:53
Tino
Hallo,
dies liegt an der Formatierung der Spalte.
Die Überschrift ist Text (Du liest ohne ein) der Rest ist Zahl da kommt die Abfrage durcheinander!
Sub xx()
Dim rec As Object
Dim cnt As Object
Dim sAdoConnectString As String, sPfad As String
Dim sQuery As String
Dim n
Set cnt = CreateObject("Adodb.connection")
Dim oZielStartRange As Range
sPfad = ThisWorkbook.Path & "\ado1.xls" 'HIER ALLENFALLS NOCH DEN PFAD ANPASSEN
Set oZielStartRange = ThisWorkbook.Worksheets("Tabelle1").Range("a1")
sAdoConnectString = "Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};HDR=1; _
DBQ=" & sPfad
Set rec = CreateObject("ADODB.RECORDSET")
cnt.Open sAdoConnectString
'sQuery = "Select Max ([Wert]) from [Quelle$] where Artikel='Hammer'"
sQuery = "Select * From [Quelle$A2:D" & 65000 & "]"
With rec
.Source = sQuery
.ActiveConnection = cnt
.Open
'MsgBox .Fields(1).Value
End With
Call AusgabePerCopyFromRecordset(rec, oZielStartRange)
Aufraeumen:
On Error Resume Next ' Sehr Faul
rec.Close
cnt.Close
Set rec = Nothing
Set cnt = Nothing
Exit Sub
Fehler:
MsgBox "Fehler: " & Err.Description
Resume Aufraeumen
End Sub
Private Sub AusgabePerCopyFromRecordset(DasRecordSet As Object, _
StartAusgabe As Range)
Dim n&
StartAusgabe.CurrentRegion.Clear
For n = 0 To DasRecordSet.Fields.Count - 1
StartAusgabe.Offset(0, n) = DasRecordSet.Fields(n).Name
Next n
StartAusgabe.Offset(1, 0).CopyFromRecordset DasRecordSet
End Sub
Gruß Tino