这是我写的程序:Private Mdb As Database, Mdb2 As Recordset, MdbChange As Field, MdbChange3 As TableDefPublic Function WriteAccess(FileName As String, Username As String, ByVal Password As String, TableName As String, RecordNumber As Long, _ FieldNumber As Long, DataMain As Variant, Optional IsError As Boolean = False) As Boolean Password = ";PWD=" & Trim(Password) On Error GoTo ErrCL Set Mdb = OpenDatabase(FileName, False, False, Password) Set Mdb2 = Mdb.OpenRecordset(TableName) If IsError = True Then If RecordNumber > Mdb2.RecordCount Or FieldNumber > Mdb2.Fields.Count Then WriteAccess = False Mdb2.Close Mdb.Close Exit Function End If End If Call Mdb2.MoveFirst Call Mdb2.Move(RecordNumber) Mdb2.Edit Mdb2(FieldNumber) = DataMain Mdb2.Update Mdb2.Close Mdb.Close WriteAccess = True Exit Function ErrCL: If Err.Number = 3050 Then Resume End If Exit Function End Function
[email protected]
FieldNumber As Long, DataMain As Variant, Optional IsError As Boolean = False) As Boolean
Password = ";PWD=" & Trim(Password)
On Error GoTo ErrCL
Set Mdb = OpenDatabase(FileName, False, False, Password)
Set Mdb2 = Mdb.OpenRecordset(TableName)
If IsError = True Then
If RecordNumber > Mdb2.RecordCount Or FieldNumber > Mdb2.Fields.Count Then
WriteAccess = False
Mdb2.Close
Mdb.Close
Exit Function
End If
End If
Call Mdb2.MoveFirst
Call Mdb2.Move(RecordNumber)
Mdb2.Edit
Mdb2(FieldNumber) = DataMain
Mdb2.Update
Mdb2.Close
Mdb.Close
WriteAccess = True
Exit Function
ErrCL:
If Err.Number = 3050 Then
Resume
End If
Exit Function
End Function