[VBA] Comment tester l'existence d'une table ?

Comment tester l'existence d'une table ? [VBA] - Programmation

Marsh Posté le 01-06-2001 à 23:39:52    

Je sais, ça doit être tout con, mais j'ai eu beau éplucher l'aide, pas de réponse ... alors, avis aux âmes charitables.

Reply

Marsh Posté le 01-06-2001 à 23:39:52   

Reply

Marsh Posté le 02-06-2001 à 21:00:50    

Précision: j'ai une bd access qui contient un ensemble de tables.
Je veux importer une table d'une autre base, mais je voudrais d'abbord vérifier si elle n'est pas déjà présente dans la base. Le tout en VB bien sûr.

Reply

Marsh Posté le 03-06-2001 à 11:31:44    

Ok merci pour voter aide, j'ai résolu le problème. ;)
 
Pour info, voici une solution qui fonctionne à la perfection.
 
Pour savoir si une table existe dans une base (l'objectif étant de l'importer si elle n'existe pas), il suffit d'essayer de la supprimer et d'implémenter le système de gestion d'erreur.
 
ex :
 
sub machin ()
 
...
 
On Error GoTo Erreur_machin
 
DoCmd.DeleteObject acTable, "table_a_importer"
 
'si la table n'existe pas : erreur 3011
'si elle existe elle a été effacée : on peut la réimporter
 
DoCmd.TransferDatabase acImport, "Microsoft Access", chemin_ancienne_base, acTable, "table_a_importer", "table_a_importer", False, False
 
...
 
Erreur_machin:
 
    If Err.Number = 3011 Then
        Err.Clear
        Resume Next
        'on ne fait rien mais on reprend l'exécution juste après la ligne qui a généré l'erreur
    End If
 
end sub
 
(merci à NitRic qui m'a bien mis sur la voie sur le forum VBFrance.com)
 
all is well, end is well

 

[edit]--Message édité par Ho--[/edit]

Reply

Marsh Posté le 04-06-2001 à 05:18:38    

sinon tu pouvais essaye de la creer et ca t aurais aussi retourner une erreur si elle existait deja je crois bien :D.
enfin desole depas avoir repondu lutot car j avaispas vu:D, et j avais fait un truc similaire l annee derniere mais je me souviens plus trop, enfin jaurais regarder mon listing :).


---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed