Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/06/2011, 15h03   #1
Nouveau Membre du Club
 
Homme
Étudiant
Inscription : juin 2011
Messages : 75
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juin 2011
Messages : 75
Points : 27
Points : 27
Par défaut Passage de DAO en ADO : equivalent de Tabledefs?

Bonjour,
J'essaye de passer un bout de code de DAO en ADO. Sur les conseils d'un membre du forum sur un de mes posts précédents, je suis allé sur le tutorial "Utiliser le modèle ADOX", mais je débute, et je dois avouer que je n'y comprend pas grand chose....
Mon code en DAO est le suivant :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
Dim tdf As TableDef
 
For Each tdf In CurrentDb.TableDefs
    If tdf.Name = Table_In Then
        For Each f In tdf.Fields
            If f.Name = "champ1" Then
                trouve = True
                Exit For
            End If
        Next f
        Exit For
    End If
Next tdf
J'ai commencé par faire le code suivant :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & dbTemplate & ";"
Set Cat = New ADOX.catalog
Cat.ActiveConnection = conn
Dim tbl As ADOX.table
 
For Each tbl In Cat.Tables
    If tbl.Name = Table_In Then
        For Each f In tbl."je ne sais pas quoi mettre ici"
            If f.Name = "champ1" Then
                trouve = True
                Exit For
            End If
        Next f
        Exit For
    End If
Next tbl
Je n'arrive pas à savoir l'équivalent de tdf.Fields.......si il existe...
Quelqu'un aurait une idée?
candrau est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2011, 16h24   #2
Rédacteur/Modérateur

 
Avatar de argyronet
 
Homme Jean-Philippe AMBROSINO
Panseur de bobos en solutions ETL
Inscription : mai 2004
Messages : 3 650
Détails du profil
Informations personnelles :
Nom : Homme Jean-Philippe AMBROSINO
Localisation : France

Informations professionnelles :
Activité : Panseur de bobos en solutions ETL
Secteur : Finance

Informations forums :
Inscription : mai 2004
Messages : 3 650
Points : 6 209
Points : 6 209
Envoyer un message via MSN à argyronet
Bonjour,

Si la références pas ADO Ext. 2.8 for DDL and Security n'existe pas, tu ne peux bénéficier de l'intellisence sur propriétés des objets.
En l'occurence, une table en ADO possède des Columns.

Argy
__________________
Ils comptent sur vous...

Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

Web Site@Mail
Livres : VBA pour OFFICE 2007 et MICROSOFT ACCESS 2007
Nouveau Tutoriel : Déployer vos applications avec Microsoft Access 2010
MDB Viewer : Visionneuse Access v4.0
argyronet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2011, 16h37   #3
Nouveau Membre du Club
 
Homme
Étudiant
Inscription : juin 2011
Messages : 75
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juin 2011
Messages : 75
Points : 27
Points : 27
La référence existe bien...
En gros, le code que j'ai essayé ne convient pas du tout en ADO, c'est ça?
candrau est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2011, 16h54   #4
Rédacteur/Modérateur

 
Avatar de argyronet
 
Homme Jean-Philippe AMBROSINO
Panseur de bobos en solutions ETL
Inscription : mai 2004
Messages : 3 650
Détails du profil
Informations personnelles :
Nom : Homme Jean-Philippe AMBROSINO
Localisation : France

Informations professionnelles :
Activité : Panseur de bobos en solutions ETL
Secteur : Finance

Informations forums :
Inscription : mai 2004
Messages : 3 650
Points : 6 209
Points : 6 209
Envoyer un message via MSN à argyronet
Si, ce code est opérationel ; disons qu'il tourne...
Que veux-tu faire en fait ?

Argy
__________________
Ils comptent sur vous...

Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

Web Site@Mail
Livres : VBA pour OFFICE 2007 et MICROSOFT ACCESS 2007
Nouveau Tutoriel : Déployer vos applications avec Microsoft Access 2010
MDB Viewer : Visionneuse Access v4.0
argyronet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2011, 17h02   #5
Nouveau Membre du Club
 
Homme
Étudiant
Inscription : juin 2011
Messages : 75
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juin 2011
Messages : 75
Points : 27
Points : 27
Je veux juste vérifier si le "champ1" existe ou non dans ma table (si non, la variable "trouve" est à false, et je le rajoute dans ma table via un ALTER TABLE).

J'ai modifié avec "Columns" comme suggéré, et apparemment, ça compile et je n'ai pas d'erreur, mais après, je ne sais pas si la condition du 1er "if" a été respecté pour que le cas se présente...
On va dire que c'est résolu pour l'instant...
candrau est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h18.


 
 
 
 
Partenaires

Hébergement Web