OVH Cloud OVH Cloud

Vérification Table

2 réponses
Avatar
Sonia LAMOURET
Bonjour à tous.

Quel code dois-je utiliser pour vérifier qu'une table ou un champ existe ?

Merci d'avance pour votre aide.

A bientôt.

Sonia LAMOURET

2 réponses

Avatar
Daniel STROOBANTS
Bonjour,

Voici 2 fonctions qu'il faut appeler pour connaître l'existence d'une table
ou d'un champ dans un table.
Il suffit donc d'écrire une procédure conditionnelle pour utiliser les
réponses.


Function TabOui(NomTab$) As Boolean
Dim TD As TableDef
TabOui = False
For Each TD In Application.CurrentDb.TableDefs
If TD.Name = NomTab Then
TabOui = True
Exit For
End If
Next TD
Set TD = Nothing
End Function

Function ChampOui(TD As TableDef, NomChamp$) As Boolean
Dim Existe As Boolean
Dim FLD As Field
Existe = False
For Each FLD In TD.Fields
If FLD.Name = NomChamp Then
Existe = True
Exit For
End If
Next FLD
ChampOui = Existe
End Function

Daniel

"Sonia LAMOURET" a écrit dans le message de
news:
Bonjour à tous.

Quel code dois-je utiliser pour vérifier qu'une table ou un champ existe ?

Merci d'avance pour votre aide.

A bientôt.

Sonia LAMOURET
Avatar
Raymond [mvp]
Bonsoir à tous les deux.

petites précisions:
il n'est pas nécessaire de boucler pour savoir si la table existe:
http://access.vba.free.fr/table_vide.htm
non plus que pour l'existence d'un champ:
http://access.vba.free.fr/champ_existe.htm

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Daniel STROOBANTS" a écrit dans le message
de news:cghr9p$5pc$
Bonjour,

Voici 2 fonctions qu'il faut appeler pour connaître l'existence d'une
table

ou d'un champ dans un table.
Il suffit donc d'écrire une procédure conditionnelle pour utiliser les
réponses.


Function TabOui(NomTab$) As Boolean
Dim TD As TableDef
TabOui = False
For Each TD In Application.CurrentDb.TableDefs
If TD.Name = NomTab Then
TabOui = True
Exit For
End If
Next TD
Set TD = Nothing
End Function

Function ChampOui(TD As TableDef, NomChamp$) As Boolean
Dim Existe As Boolean
Dim FLD As Field
Existe = False
For Each FLD In TD.Fields
If FLD.Name = NomChamp Then
Existe = True
Exit For
End If
Next FLD
ChampOui = Existe
End Function

Daniel