allo, ich habe ein (hoffentlich kleines) Problem als noob in VBA....
ich bastel mir gerade ein Frontend für DB abfragen - nun ist es naturgemäß so das ich den Verbindungsaufbau bzw. die Abfrage oft brauche - und da wäre es doch Sinnvoll diese als eigenes "Modul" "auszulagern" - mein Problem jetzt -> Wie mache ich das unter Acc97 ?????
Hier mal was ich bisher habe:
Das "Modul":
Function Connect(SQL As String) As Recordset
Dim cn As ADODB.Connection
Dim rcSet As New ADODB.Recordset
Set cn = New ADODB.Connection
cn.ConnectionString = "Provider=MSDASQL;" + _
"DRIVER={MySQL ODBC 3.51 Driver};" + _
"Server=localhost;UID=root;PWD=;" + _
"database=triaton; Option=16387" 'option=16387 ist für int und bigint kompatibilität
cn.Open
cn.BeginTrans
cn.CommandTimeout = 120
cn.CursorLocation = adUseServer
rcSet.ActiveConnection = cn
rcSet.CursorLocation = adUseServer
rcSet.Open SQL, cn, adOpenForwardOnly, adLockReadOnly
Connect = rcSet
End Function
Und das hier soll der Aufruf werden:
rcSet = Connect(abfrPVT)
Set rcSet2 = db.OpenRecordset("PreisVolPos", dbOpenTable)
rcSet.MoveFirst
While Not rcSet.EOF
rcSet2.AddNew
rcSet2![PreisVolPos] = rcSet.Fields("PreisVolPos")
rcSet2.Update
rcSet.MoveNext
Wend
aber leider meckert er nur herum das die Verwendung nicht richtig ist (kann ich noch nachvollziehen da es rcSet ja schon gibt - aber was tun???? hat jmd. evtl. eine gute Idee oder noch besser ein Bsp.??
ich bastel mir gerade ein Frontend für DB abfragen - nun ist es naturgemäß so das ich den Verbindungsaufbau bzw. die Abfrage oft brauche - und da wäre es doch Sinnvoll diese als eigenes "Modul" "auszulagern" - mein Problem jetzt -> Wie mache ich das unter Acc97 ?????
Hier mal was ich bisher habe:
Das "Modul":
Function Connect(SQL As String) As Recordset
Dim cn As ADODB.Connection
Dim rcSet As New ADODB.Recordset
Set cn = New ADODB.Connection
cn.ConnectionString = "Provider=MSDASQL;" + _
"DRIVER={MySQL ODBC 3.51 Driver};" + _
"Server=localhost;UID=root;PWD=;" + _
"database=triaton; Option=16387" 'option=16387 ist für int und bigint kompatibilität
cn.Open
cn.BeginTrans
cn.CommandTimeout = 120
cn.CursorLocation = adUseServer
rcSet.ActiveConnection = cn
rcSet.CursorLocation = adUseServer
rcSet.Open SQL, cn, adOpenForwardOnly, adLockReadOnly
Connect = rcSet
End Function
Und das hier soll der Aufruf werden:
rcSet = Connect(abfrPVT)
Set rcSet2 = db.OpenRecordset("PreisVolPos", dbOpenTable)
rcSet.MoveFirst
While Not rcSet.EOF
rcSet2.AddNew
rcSet2![PreisVolPos] = rcSet.Fields("PreisVolPos")
rcSet2.Update
rcSet.MoveNext
Wend
aber leider meckert er nur herum das die Verwendung nicht richtig ist (kann ich noch nachvollziehen da es rcSet ja schon gibt - aber was tun???? hat jmd. evtl. eine gute Idee oder noch besser ein Bsp.??