IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

Liste des champs d'une table particulière


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 14
    Par défaut Liste des champs d'une table particulière
    Bonjour,

    je cherche à balayer la liste des champs d'une table que j'ai sélectionnée dans une liste déroulante, mais j'ai un problème avec la syntaxe que j'utilise pour définir quelle table m'intéresse :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub Chx_Table_Change()
    Dim Nom_Table As TableDef
    Dim Fld As Field
    MsgBox Chx_Table.Value
    Set Nom_Table = CurrentDb.TableDefs(Chx_Table.Value)
    MsgBox Nom_Table.Name
    For Each Fld In Nom_Table.Fields
        MsgBox Fld.Name
    Next
    End Sub
    Je plante à la ligne "msgbox Nom_Table.Name" (pour l'instant ) en erreur 3420 : L'objet n'est plus valide ou n'est plus défini.

    Quelqu'un voit pourquoi ? ou voit un contournement ?

    Merci d'avance

  2. #2
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut Instancier la base de données
    Bonjour.

    Je te propose de modifier le code ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Private Sub Chx_Table_Change()
    Dim Nom_Table As TableDef
    Dim Fld As Field
    Dim oDb as DAO.DataBase
     
    MsgBox Chx_Table.Value
    Set oDb = Application.CurrentDb
    Set Nom_Table = oDb.TableDefs(Chx_Table.Value)
    MsgBox Nom_Table.Name
    For Each Fld In Nom_Table.Fields
        MsgBox Fld.Name
    Next
    Set Fld = Nothing
    Set Nom_Table = Nothing
    Set oDb = Nothing
    End Sub
    Ca pourrait bien marcher.

    Bon courage,

Discussions similaires

  1. comment obtenir la liste des champs d'une table
    Par richard038 dans le forum SQL
    Réponses: 4
    Dernier message: 13/02/2009, 19h28
  2. Requête donnant la liste des champs d'une table
    Par laurentSc dans le forum Débuter
    Réponses: 2
    Dernier message: 16/02/2008, 22h08
  3. Réponses: 2
    Dernier message: 03/12/2007, 10h57
  4. [SQL] Trier la liste des champs d'une table
    Par nicoaix dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 03/10/2007, 19h08
  5. Récupérer la liste des champs d'une table
    Par mister3957 dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 17/04/2007, 15h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo