把表达式 True=False 放到表的 ValidationRule 属性就能锁上。 HardLockTable?实现了该功能。 声明 Public MyDB As Database Dim Dummy As Integer 函数 Function HardLockTable (ByVal whichAction As String,?ByVal aTable As String) As Integer On Error GoTo HardLockTableError HardLockTable = True Select Case whichAction Case "Lock" MyDB.TableDefs(aTable).ValidationRule = "True=False" MyDB.TableDefs(aTable).ValidationText =?"This table locked via " & ?"ValidationRule on " & Now Case "UnLock" MyDB.TableDefs(aTable).ValidationRule = "" MyDB.TableDefs(aTable).ValidationText = "" Case "TestThenUnLock" If MyDB.TableDefs(aTable).ValidationRule = "True=False" Then MyDB.TableDefs(aTable).ValidationRule = "" MyDB.TableDefs(aTable).ValidationText = "" End If End Select HardLockTableErrorExit: 'subFlushDBEngine 'optional, see next suggestion Exit Function HardLockTableError: HardLockTable = False MsgBox Error$ & " error " & "in HardLockTable trying " & "to " & whichAction & " " & aTable Resume HardLockTableErrorExit End Function 使用例子 '上锁 Dummy = HardLockTable("Lock", "TestTable") ' 开锁 Dummy = HardLockTable("UnLock", "TestTable")