Salut, suite à la réponse de Lou Pitchoun sur un de mes précédent post j'ai un problème qui vient de survenir.

Je dois importer des tables qui viennent d'une base de donnée sélectionnée par l'utilisateur via une ouverture d'une boite de dialogue. Ceci me donne bien le nom de la base de donnée mais ma question est :
1- Comment tester les noms de tables présentes dans cette base avant de faire l'importation, car si une mauvaise base est sélectionnée (elle n'aura pas les tables voulues) alors je ne fais pas l'importation et j'envoie un msg d'erreur.

Voici une partie du code que j'utilise actuellement (access 2003):

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    ' Efface les relations de tables existante
    Dim Rel As Relation
    For Each Rel In CurrentDb.Relations
        Debug.Print "effacement de la relation [" & Rel.Table & "]![" & Rel.Fields(0).Name & "] -=-> [" & Rel.ForeignTable & "]![" & Rel.Fields(0).ForeignName & "]"
        CurrentDb.Relations.Delete Rel.Name
    Next Rel
 
    ' Efface les tables actuelles
    DoCmd.DeleteObject acTable, "Historique_Devis"
    DoCmd.DeleteObject acTable, "Historique_Facture"
    DoCmd.DeleteObject acTable, "Acompte"
 
    ' Importe les tables de la version précédente
    DoCmd.TransferDatabase acImport, "Microsoft Access", Source, acTable, "Historique_Devis", "Historique_Devis", False
    DoCmd.TransferDatabase acImport, "Microsoft Access", Source, acTable, "Historique_Facture", "Historique_Facture", False
    DoCmd.TransferDatabase acImport, "Microsoft Access", Source, acTable, "Acompte", "Acompte", False
et effectivement si la base sélectionnée ('source') n'a pas les tables 'Historique_Devis', 'Historique_Factures' et 'Acompte' alors j'ai un souci car elles ont été effacée de ma base actuelle.