ich stehe gerade völlig auf dem Schlauch. Ich will per Recordset Daten aus einer geschlossenen Arbeitsmappe laden. Eigentlich habe ich nur die Pfade und Bezeichner aus meiner Vorlage angepasst, aber es kommt dennoch zu folgendem Fehler, sobald das Recordset geöffnet werden soll:
Laufzeitfehler '-2147217904 (80040e10)':
Für mindestens einen erforderlichen Parameter wurde kein Wert angegeben.
Mein Code sieht wie folgt aus:
Private Sub GetData()
Dim oAdoConnection As Object
Dim oAdoRecordset As Object
Dim sAdoConnectString As String
Dim sPfad As String
Dim sQuery As String
Dim oZielStartRange As Range
'Datenziel definieren
Set oZielStartRange = ThisWorkbook.Worksheets(1).Range("B2")
'Quellpfad definieren
sPfad = "J:\Entwicklung\60_Projects\99 System\Taktablauf\TA_Verknüpfungen.xlsx"
'ADO Initialisieren
'Late Binding
Set oAdoConnection = CreateObject("ADODB.CONNECTION")
sAdoConnectString = "Provider=Microsoft.ACE.OLEDB.12.0; Extended Properties='Excel 12.0 Xml; _
_
HDR=NO';Data Source=" & sPfad
oAdoConnection.Open sAdoConnectString
'Definieren der Daten, welche kopiert werden sollen. In diesem Fall immer der komplette _
Datensatz
Set oAdoRecordset = CreateObject("ADODB.RECORDSET")
sQuery = "SELECT [Schrittbezeichnung_2_DE],[Schrittbezeichnung_3_DE] FROM [Bezeichnungen$] _
_
WHERE Schrittbezeichnung_2_DE = 'Kabel'"
With oAdoRecordset
.Source = sQuery
.ActiveConnection = oAdoConnection
.Open 'Hier taucht die Fehlermeldung auf
Call AusgabePerCopyFromRecordset(oAdoRecordset, oZielStartRange)
End With
With Application
.Goto (ThisWorkbook.Worksheets(i).Range("A1")), True
.ScreenUpdating = True
.AskToUpdateLinks = True
.EnableEvents = True
.DisplayAlerts = True
End With
oAdoRecordset.Close
oAdoConnection.Close
Set oAdoRecordset = Nothing
Set oAdoConnection = Nothing
End Sub
Public Sub AusgabePerCopyFromRecordset(DasRecordSet As Object, _
StartAusgabe As Range)
' Peter Haserodt 2007
StartAusgabe.CurrentRegion.Clear
StartAusgabe.CopyFromRecordset DasRecordSet
End Sub
Danke für eure Hilfe und nen Gruss