[VBA] Récupération nom table - fichier Access

Résolu
_goni Messages postés 964 Statut Membre -  
_goni Messages postés 964 Statut Membre -
Bonjour à tous,

Je cherche une petite fonction VBA qui me permetterais de supprimer toutes les tables de mon ficher Access.

Si vous avez besoin de plus d'info dites le moi.
Merci d'avance.

Benoit.
Configuration: Windows XP
Internet Explorer 6.0

2 réponses

  1. blux Messages postés 2051 Date d'inscription   Statut Modérateur Dernière intervention   3 455
     
    Salut,

    pour ça, il te faut parcourir la collection des tables de la base courante et générer un peu de SQL pour faire un drop table avec RunSql...

    Attention, à ne pas supprimer les tables système (commençant par Msys...)
    Dim Ta As TableDef
    For Each Ta In CurrentDb.TableDefs
        MsgBox Ta.Name
    Next
    0
  2. _goni Messages postés 964 Statut Membre 38
     
    J'ai trouvé la solution. Voila le code si ça peut aider quelqu'un

    Dim BD As DAO.Database
    Set BD = CurrentDb
    Dim tb As DAO.TableDef
    For Each tb In BD.TableDefs
        If Left(tb.Name, 4) <> "MSys" Then
            If Len(tb.Connect) > 0 Then
                DoCmd.RunSQL "DROP TABLE [" & tb.Name & "] ;"
                Debug.Print "effacement de " & tb.Name & " -=#=> " & tb.Connect
            End If
        End If
    Next tb
    0