Crees des tables access en vb 6

Résolu
patou60110 Messages postés 31 Date d'inscription dimanche 17 décembre 2006 Statut Membre Dernière intervention 9 août 2008 - 14 juin 2008 à 23:21
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 - 15 juin 2008 à 02:55
salut a tout le monde je me trouve actuellement devant un probleme.
voila je voudrais crée plusieure table dans access 2007 en vb6 voila le
bout de code :

 
Dim cat As New ADOX.Catalog

 Dim tbl As New ADOX.Table

 Dim key As New ADOX.key

 
 cat.Create "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=e:\bdd\essaie.accdb"

 

 '***********************************************

 '**     Ajout d'une table1                                                **

 '***********************************************

 

    tbl.Name = "table1"

     ici je mettrai les champ par rapport a la table

   ' cat.Tables.Append tbl                   
 '***********************************************

 '**     Ajout d'une table2                                                **

 '***********************************************

 
  tbl.Name = "table2"

    ici je mettrai les champ par rapport a la table

  cat.Tables.Append tbl

j'obtient le message d'erreur suivant 3367 objet deja présent dans la collection.ajout impossible.

 
merci d'avance de votre aide

3 réponses

PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
15 juin 2008 à 02:55
beh je ne sais pas si çà marchera, ADO et ACCDB, un ptit doute, et je n'ai pas office ultimate pour tester à l'instant....

bref d'après le message d'erreur çà serait du genre :

Sub CreateTables()
    Dim cat As New ADOX.Catalog
    Dim tbl As ADOX.Table
    Dim key As New ADOX.key
    
    cat.Create "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=e:\bdd\essaie.accdb"
    
    '***********************************************
    '**     Ajout d'une
table1                    **
    '***********************************************
    Set tbl = New ADOX.Table
    tbl.Name = "table1"
    cat.Tables.Append tbl 'ici je mettrai
les champs par rapport à la table
    Set tbl = Nothing
    
    
    '***********************************************
    '**     Ajout d'une
table2                    **
    '***********************************************
    Set tbl = New ADOX.Table
    tbl.Name = "table2"
    cat.Tables.Append tbl 'ici je mettrai
les champs par rapport à la table
    Set tbl = Nothing
    
    '...
End Sub

après il est possible aussi qu'access n'accepte pas l'ajout de table vide, çà ne m'étonnerait pas.
donc forcément tant que le "ici je mettrai
les champs par rapport à la table" n'est pas fait, tu pourrais alors avoir des messages d'erreur

++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
3
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
15 juin 2008 à 00:37
salut,
tbl doit être NEW à chaque ajout

++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
0
patou60110 Messages postés 31 Date d'inscription dimanche 17 décembre 2006 Statut Membre Dernière intervention 9 août 2008
15 juin 2008 à 02:16
salut pcpt
peut tu me donner donner un exemple , car j'ai essaie mais je ne tombe que sur des message d'erreur ou tous se qui pourrais m'aider
                                                                                  merci
0
Rejoignez-nous