牛先生 发表于:2010-08-06 22:57:05
想清除表里面的数据,得一个表格一个表格的删除,太麻烦了,有没有一个简便的办法,可以清除了数据。而且让自动编码归零呢?请老师们指教一下。
Public Function Deltb(ParamArray tbname() As Variant)
'功能:删除数据库中各表的记录
'参数:tbname---不删除记录的表名称数组
'示例:Call Deltb("物资表","人员表","部门表")
Dim rs As New ADODB.Recordset
Dim ssql As String
Dim i As Long, j As Long
Dim B As Boolean
ssql = "Select Name FROM MSysObjects Where (Type=1 or Type=6) And Not (Name Like 'MSys*' or Name Like '~*')"
rs.Open ssql, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
For i = 1 To rs.RecordCount
B = False
For j = 0 To UBound(tbname, 1)
If rs![Name].Value = tbname(j) Then
B = True
Exit For
End If
Next
If B = False And InStr(rs![Name].Value, "MSys") = 0 Then
CurrentDb.Execute "Delete * FROM " & rs![Name].Value
End If
rs.MoveNext
Next
rs.Close
End Function
煮江品茶老弟,我将代码写入了,但是没起作用,你给看看是哪出的错呢?详见示例中。
点击下载此附件
等我瞅瞅
明白了 谢谢啦
总记录:5篇 页次:1/1 9 1 :