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

Contribuez Discussion :

Lister le nom des champs dans une table précise


Sujet :

Contribuez

  1. #1
    Membre averti Avatar de robyseb
    Homme Profil pro
    Programmeur-Analyste
    Inscrit en
    Juillet 2011
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur-Analyste
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2011
    Messages : 305
    Points : 423
    Points
    423
    Par défaut Lister le nom des champs dans une table précise
    Bonjour !

    Voici un bout de code afin de lister les noms des champs dans une table précise.
    il semble y avoir une demande alors le voici :

    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
    17
    18
    19
    20
    21
    22
    23
    Sub CountEnum()
     
    'Déclaration des variables
    Dim db As DAO.Database
    Dim oRst As DAO.Recordset
    Dim msg As String
    Dim nombrechamps as integer
     
    Set db = CurrentDb
    Set oRst = db.OpenRecordset("Tbl")
     
    nombrechamps = oRst.fields.Count
     
     
    Dim f As DAO.Field: For Each f In oRst.fields
       msg = msg & "  -" & f.Name & vbCrLf
    Next f
     
     
    MsgBox "Il y a " & nombrechamps & " Champs dans la table : (Tbl) :" & vbCrLf & vbCrLf & msg
    Set oRst = Nothing
    Set db = Nothing
    End Sub
    *Modifier avec les idées de Marot r
    Merci

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835
    Par défaut
    Autre possibilité
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    dim f as dao.field: For each f in oRst.fields
            msg = msg & "  -" & f.name & vbCrLf
    Next f
    et encore avec l'objet TableDef qui évite d'avoir à ouvrir la table :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    dim t as dao.tabledef:set =db.tableDefs("NomTaTable")
     
    dim f as dao.field:for each f in t.fields
       debug.print f.name
    next f
     
    set t=nothing
    A+

  3. #3
    Membre averti Avatar de robyseb
    Homme Profil pro
    Programmeur-Analyste
    Inscrit en
    Juillet 2011
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur-Analyste
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2011
    Messages : 305
    Points : 423
    Points
    423
    Par défaut
    Salut et merci

    la seule chose est que je ne suis pas trop habitué d'écrire mes déclaration comme tu le fait et ta 2e exemple ne fonctionne pas il semble manqué ce que tu souhaite SET...

    j'ai beau mettre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    dim t as dao.tabledef:set t = db.tableDefs("NomTaTable")
     
    dim f as dao.field:for each f in t.fields
       debug.print f.name
    next f
     
    set t=nothing
    mais ca ne fonctionne pas
    merci

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 365
    Points : 23 835
    Points
    23 835
    Par défaut
    Quelle est ta version d'Access ?

    Quel est le message d'erreur ?

    A+

  5. #5
    Membre averti Avatar de robyseb
    Homme Profil pro
    Programmeur-Analyste
    Inscrit en
    Juillet 2011
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Canada

    Informations professionnelles :
    Activité : Programmeur-Analyste
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2011
    Messages : 305
    Points : 423
    Points
    423
    Par défaut
    Access 2007

    Erreur d'execution "91"

    variable objet ou variable de bloc with non definie

  6. #6
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut
    Bonjour,

    Il me semble que :

    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
    17
    18
    19
    20
    21
    Sub Test()
     
        Dim db As DAO.Database
        Dim tbl As DAO.TableDef
        Dim fld As DAO.Field
     
        Set db = CurrentDb
     
        Set tbl = db.TableDefs("NomTable")
     
        For Each fld In tbl.Fields
     
            Debug.Print fld.Name
     
        Next fld
     
        Set tbl = Nothing
     
        Set db = Nothing
     
    End Sub
    serait plus complet.

    Domi2

Discussions similaires

  1. Réponses: 5
    Dernier message: 10/02/2010, 14h11
  2. [MySQL] Mettre le nom des champs d'une table dans un tableau
    Par beegees dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 11/10/2008, 15h43
  3. cherche requette pour trouver le nom des champs dans une table
    Par maverick56 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 12/07/2007, 10h28
  4. Réponses: 5
    Dernier message: 11/07/2007, 16h03
  5. lister le nom des champs d'une table
    Par creale10 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 09/11/2006, 11h07

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