Noname > 09-08-10, 01:53 AM
Private sub phuchoi_click ()
Call UnDeleteTable ()
End sub
Option Compare Database
Function UnDeleteTable(Optional sName As String)
Dim db As DAO.Database
Dim tdf As DAO.TableDef
Dim sTable As String
Dim sSQL As String
Dim sMsg As String
If IsMissing(sName) Then sName = "Tablephuchoi"
If Len(sName) = 0 Then sName = "Tablephuhoi"
Set db = CurrentDb()
For Each tdf In db.TableDefs
If left(tdf.Name, 4) = "~tmp" Then
sTable = tdf.Name
sSQL = "SELECT [" & sTable & "].* INTO " & sName
sSQL = sSQL & " FROM [" & sTable & "];"
db.Execute sSQL
sMsg = "Da phuc hoi xong mot Tablle bi xoa voi ten " & sName
MsgBox sMsg, vbOKOnly, "Da phuc hoi xong"
GoTo Exit_Undelete
End If
Next
' Neu khong tim thay thi thong bao
MsgBox "Khong tim thay Table nao co the phuc hoi", vbOKOnly, "Xin loi!"
Exit_Undelete:
Set db = Nothing
Exit Function
Err_Undelete:
MsgBox err.Description
Resume Exit_Undelete
End Function
' Notes: Ham nay chi su dung cho Access 95 tro len va con tuy thuoc vao mot so dieu kien sau:
' - Da xoa nham Table nhung chua dong CSDL (đóng rồi thì tui chưa thử)
' - CSDL chua su dung che do compact and comact repair (dọn rác rồi lấy đâu ra mà phục hồi?)
' - CSDL bi xoa boi phan quyen User trong ung dung access cua ban (tui thu roi khoi test nua)
' - Ham nay chi phuc hoi cho mot Table bi xoa gan nhat (những cái trước đó tui bó tay chưa nghĩ ra)