Hi Leute,
ich bräuchte bitte Hilfe mit folgenden Code..
Sub CopyDataFromDatabase()
Dim MeineDBConn As ADODB.Connection
Dim MeineData As ADODB.Recordset
Dim ObjektField As ADODB.Field
Set MeineDBConn = New ADODB.Connection
Set MeineData = New ADODB.Recordset
MeineDBConn.ConnectionString = ConStrAccess
MeineDBConn.Open
On Error GoTo CloseConnection
With MeineData
.ActiveConnection = MeineDBConn
' .Source = "SELECT Obje_ID, Obje_Adresse, Obje_Name, Obje_FixAuftrag FROM tblObjekte ORDER BY Obje_Name ASC;"
.Source = GetSQLString
.LockType = adLockReadOnly
.CursorType = adOpenForwardOnly
.Open
End With
On Error GoTo CloseRecordset
Worksheets.Add
For Each ObjektField In MeineData.Fields
ActiveCell.Value = ObjektField.Name
ActiveCell.Offset(0, 1).Select
Next ObjektField
Range("A1").Select
Range("A2").CopyFromRecordset MeineData
Range("A1").CurrentRegion.EntireColumn.AutoFit
On Error GoTo 0
CloseRecordset:
MeineData.Close
CloseConnection:
MeineDBConn.Close
End Sub
Function GetSQLString() As String
Dim strOrt As String
Dim SQLString As String
strOrt = Application.InputBox("Ort eintragen!", Type:=2)
SQLString = "SELECT Obje_ID, Obje_Name, Obje_Adresse, Obje_Ort, Obje_FixAuftrag " & _
"FROM tblObjekte " & _
"WHERE Obje_Ort = strOrt" & _
"ORDER BY Obje_Name ASC;"
GetSQLString = SQLString
End Function
Die obere Function soll den SQL string als Parameter für die Prozedur verwenden.
Leider bekomme ich es nicht hin das die Variable strOrt mir diese zurück gibt.
Also der Fehler it in der Function in der WHERE Clause...
Sollte nicht so schwieirig sein wenn man weis wie :( Leider hab ich noch keinen Erfolg gehabt es zu schaffen!
Würde mich freuen wenn mir jemand den Fehler sagen könnte.
Vielen Dank
Silentwolf
Hallo,
Function GetSQLString() As String
Dim strOrt As String
Dim SQLString As String
strOrt = Application.InputBox("Ort eintragen!", Type:=2)
SQLString = "SELECT Obje_ID, Obje_Name, Obje_Adresse, Obje_Ort, Obje_FixAuftrag " & _
"FROM tblObjekte " & _
"WHERE Obje_Ort = '" & strOrt & "' " & _
"ORDER BY Obje_Name ASC;"
GetSQLString = SQLString
End Function
Hallo Franz,
Vielen Dank! Super es funktioniert einwandfrei!!
Schöne Grüße!