AatB
Gebruiker
- Lid geworden
- 15 dec 2007
- Berichten
- 257
Geacht Forum,
Ik ben al wat verder met het gebruiken van excel als frontend voor access.
Ik wil alleen maar updaten en dus niet toevoegen of deleten.
Echter de code in excel die ik gebruik werk nog niet goed.
Ik vind alleen het eerste record in test.mdb....
Kunnen jullie mij helpen?
mvg,
Aat
Ik ben al wat verder met het gebruiken van excel als frontend voor access.
Ik wil alleen maar updaten en dus niet toevoegen of deleten.
Echter de code in excel die ik gebruik werk nog niet goed.
Ik vind alleen het eerste record in test.mdb....
Kunnen jullie mij helpen?
mvg,
Aat
Code:
Sub UpdateTest()
Dim dbTest As ADODB.Connection
Dim rs As ADODB.Recordset
Dim exceldata As Range
Dim strCust_ID As String
Dim strCust_Name As String
Dim strSQL As String
Set dbTest = New ADODB.Connection
dbTest.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
Workbooks(1).Path & "\test.mdb"
dbTest.Open
Set rs = New ADODB.Recordset
Set exceldata = Worksheets("Blad1").Range("A2")
'Add data Excelsheet
Do While exceldata <> ""
If exceldata.Offset(0, 0) <> exceldata.Offset(-1, 0) Then
strCust_ID = exceldata
strCust_Name = exceldata.Offset(0, 1)
strSQL = "SELECT * FROM tblTest 'WHERE Cust_ID=" & strCust_ID
With rs
.Open strSQL, dbTest, adOpenStatic, adLockOptimistic, adCmdText
If strCust_ID <> .Fields("Cust_ID") Then GoTo nkst
.Fields("Cust_ID") = strCust_ID
.Fields("Cust_Name") = strCust_Name
.Update
nkst:
.Close
End With
End If
Set exceldata = exceldata.Offset(1, 0)
Loop
dbTest.Close
Set dbTest = Nothing
End Sub