M
Mischa
Hoi,
In een groep van maximaal vijf gebruikers exporteer ik via een macro de
gegevens uit excel naar access.
Deze access files bevindt zich op een nt server.
Krijg je een foutmelding als er door twee of meer gebruikers tegelijk de
macro wordt uitegevoerd?
Dit om te voorkomen dat er gegevens verloren gaan als er op het zelfde
moment naar het bestand wordt geschreven...
de code is als volgt
Sub Export()
Dim cn As ADODB.Connection, rs As ADODB.Recordset, r As Long
Set cn = New ADODB.Connection
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; " & _
"Data Source=\\Nt\Access\Dbase1.mdb;"
Set rs = New ADODB.Recordset
rs.Open "TableName", cn, adOpenKeyset, adLockOptimistic, adCmdTable
r = 1
Do While Len(Range("A" & r).Formula) > 0
With rs
.AddNew
.Fields("Veld1") = Range("A" & r).Value
.Fields("Veld2") = Range("B" & r).Value
.Fields("Veld3") = Range("C" & r).Value
.Update
End With
r = r + 1
Loop
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
End Sub
Bedankt,
Mischa
In een groep van maximaal vijf gebruikers exporteer ik via een macro de
gegevens uit excel naar access.
Deze access files bevindt zich op een nt server.
Krijg je een foutmelding als er door twee of meer gebruikers tegelijk de
macro wordt uitegevoerd?
Dit om te voorkomen dat er gegevens verloren gaan als er op het zelfde
moment naar het bestand wordt geschreven...
de code is als volgt
Sub Export()
Dim cn As ADODB.Connection, rs As ADODB.Recordset, r As Long
Set cn = New ADODB.Connection
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; " & _
"Data Source=\\Nt\Access\Dbase1.mdb;"
Set rs = New ADODB.Recordset
rs.Open "TableName", cn, adOpenKeyset, adLockOptimistic, adCmdTable
r = 1
Do While Len(Range("A" & r).Formula) > 0
With rs
.AddNew
.Fields("Veld1") = Range("A" & r).Value
.Fields("Veld2") = Range("B" & r).Value
.Fields("Veld3") = Range("C" & r).Value
.Update
End With
r = r + 1
Loop
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
End Sub
Bedankt,
Mischa