AccessTr.neT

Tam Versiyon: tüm tabloları tek bir düğme ile silme
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
tüm tabloları tek bir düğme ile silmek mümkün müdür ?
makro ile tek tek silmek yada delete ile silmek dışındaImg-grin
Önce ilişkileri silmeniz için bir fonksiyon

Public Function tumIliskileriSil()
Dim db As Database ' Current DB
Dim rex As Relations ' Relations of currentDB.
Dim rel As Relation ' Relationship being deleted.
Dim iKt As Integer ' Count of relations deleted.
Dim sMsg As String ' MsgBox string.

Set db = CurrentDb()
Set rex = db.Relations

iKt = rex.Count

Do While rex.Count > 0
rex.Delete rex(0).Name
Loop

End Function

sonra tabloları temizlemek için fonksiyon

Public Function tumTablolariSil()
On Error GoTo Hata_Yakala

Dim vt As DAO.Database
Dim rst As DAO.Recordset
Dim tabloSorgu As String

Set vt = CurrentDb()

tabloSorgu = "SELECT MSysObjects.Name FROM MSysObjects " & "WHERE Left$([Name],1)<>'~' AND Left$([Name],4)<>'MSys' " & "AND MSysObjects.Type =1 ORDER BY MSysObjects.Name"

Set rst = vt.OpenRecordset(tabloSorgu)

If Not rst.EOF Then
rst.MoveFirst

Do Until rst.EOF
rst.MoveNext
tabloAdi = "DROP TABLE " & rst!Name
vt.Execute tabloAdi
Loop
End If

rst.Close

Set rst = Nothing

Hata_Yakala:
MsgBox Err.Description
Exit Function

End Function

bir butonun tıklanma olayında

tumIliskileriSil
tumTablolariSil
sayın elpeki99 oldu çalışıyor teşekkürler,
sonunda geçerli kayıt yok! uyarısı veriyor ve sadece bir tane tablo kalıyor neden olabilir sizce?
Döngüde olmayan tablo ile ilgili işlem yapıldığından veriyor o hatayı. Düzeltilmesi çok basit olan bir şey ancak hızlıca ekleyeyim dediğim için detaylı incelememiştim. Vaktim olan bir gün bakmaya çalışırım.
teşekkürler sayın alpeki bekliyorum yeni cevabınızı kolay gelsin