Ajouter un nouveau champ NuméroAuto à plusieurs tables en vba et sql
Bonjour,
J'ai parcouru beaucoup de forums access et vba et j'ai essayé de créer un code, mais j'ai toujours un message d'erreur.
Le but est d'ajouter un nouveau champ NuméroAuto dans plusieurs tables (issues d'une importation txt). Quand je fais le code pour une table, cela fonctionne :
Code:
1 2 3 4 5 6 7
| Public Sub Cleprim()
Dim sql As String
sql = "ALTER TABLE G10060717203159_txt ADD COLUMN ID COUNTER"
DoCmd.RunSQL sql
End Sub |
et lorsque c'est pour plusieurs table :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| Public Sub chgTbl()
Dim db As DAO.Database
Dim tdf As DAO.TableDef
Set db = CurrentDb
Dim sql As String
sql = "ALTER TABLE tdf.Name ADD COLUMN ID COUNTER"
For Each tdf In db.TableDefs
If Not (tdf.Name Like "MSys*") And tdf.Name Like "G10*" Then
DoCmd.RunSQL sql, tdf.Name
End If
Next
End Sub |
j'ai le message suivant : erreur d'exécution 3371 : le type d'une expression entrée pour un des arguments est incorrect.
Merci de votre aide !
ps:Je suis novice en Vba
Toujours le même message d'erreur.
Après le test signifie après "next" ou après "end if" ?
J'ai essayé les deux mais j'ai toujours le même message. Je l'ai collé après "for each...".
Cela ne fonctionne pas non plus.