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

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    mai 2012
    Messages
    657
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : mai 2012
    Messages : 657
    Points : 123
    Points
    123

    Par défaut Compter le nombres de champs formulaires hérités d'un document

    Bonjour,
    Je souhaiterais connaître le nombre total de champs de formulaire hérité de mon document.
    Existe-t-il un code pour parvenir à ce résultat?

    Merci d'avance pour un coup de main

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Développeur Vba Excel
    Inscrit en
    avril 2013
    Messages
    4 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Vba Excel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2013
    Messages : 4 040
    Points : 10 329
    Points
    10 329
    Billets dans le blog
    27

    Par défaut

    Citation Envoyé par Kestion100 Voir le message
    Bonjour,

    Il vous faut regarder la façon de travailler avec les collections. Déclarez vos variables pour utiliser l'intellisens, vous aurez accès aux propriétés et aux méthodes utilisables par vos variables en mettant un point derrière celles-ci.

    A tester :
    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 CompterLesControles()
     
    Dim I As Integer
    Dim DocEnCours As Document
     
        Set DocEnCours = ActiveDocument
        With DocEnCours
     
             If .FormFields.Count = 0 Then Exit Sub
     
                Debug.Print "Nombre de champs : " & .FormFields.Count
     
             For I = 1 To .FormFields.Count
                 With .FormFields(I)
                      Debug.Print "Nom : " & .Name & ", type : " & .Type
                 End With
             Next I
     
        End With
        Set DocEnCours = Nothing
     
    End Sub
    Eric KERGRESSE
    https://sites.google.com/site/erickergresseeirl/
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    mai 2012
    Messages
    657
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : mai 2012
    Messages : 657
    Points : 123
    Points
    123

    Par défaut

    C'est OK pour moi.
    Juste une question subsidiaire, je souhaiterais changer .Name dans mes champs, j'essaie:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    ActiveDocument.Tables(Tablo).Cell(i, 6).Range.Select
     
     
     
     
     
        With Selection.FormFields(1)
     
           .Name = Etab & Div & "ULIS" & Tablo
     
     
        End With
    Mais le nom ne bouge pas, où est mon erreur?

    Ca vient pourtant de l'enregistreur de macro???

  4. #4
    Expert éminent sénior

    Homme Profil pro
    Développeur Vba Excel
    Inscrit en
    avril 2013
    Messages
    4 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Vba Excel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2013
    Messages : 4 040
    Points : 10 329
    Points
    10 329
    Billets dans le blog
    27

    Par défaut

    Citation Envoyé par Kestion100 Voir le message
    Il vous faut regarder la syntaxe du nom. Sinon essayez :
    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
    24
     
    Sub ChangerLeNomDesControles()
     
    Dim I As Integer
    Dim DocEnCours As Document
     
        Set DocEnCours = ActiveDocument
        With DocEnCours
     
             If .FormFields.Count = 0 Then Exit Sub
     
                Debug.Print "Nombre de champs : " & .FormFields.Count
     
                 With .FormFields(1)
     
                      Debug.Print "Nom avant : " & .Name & ", type : " & .Type 'Valeur = "AAAA"
                      .Name = "BBBB"
                      Debug.Print "Nom après : " & .Name & ", type : " & .Type
                 End With
     
        End With
        Set DocEnCours = Nothing
     
    End Sub
    Eric KERGRESSE
    https://sites.google.com/site/erickergresseeirl/
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    mai 2012
    Messages
    657
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : mai 2012
    Messages : 657
    Points : 123
    Points
    123

    Par défaut

    J'ai trouvé ça:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    With Dialogs(wdDialogFormFieldOptions)
        .Name = "ID999"
        .Execute
    End With

    Qui fonction bien et j'ai pu découvrir que le nombre de caractères est limité et que le nom doit commencer par une lettre
    J'ai donc toujours un problème qui se pose quand j'ai des noms trop longs.....

Discussions similaires

  1. Compter le nombre de champs d'un formulaire
    Par reitsab dans le forum Documents
    Réponses: 3
    Dernier message: 10/10/2008, 21h04
  2. Compter le nombre de champs dans un formulaire dynamique.
    Par rpgmax dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 20/02/2008, 15h12
  3. Compter le nombre de champs (cut ?)
    Par orafrance dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 08/05/2007, 13h46
  4. Requete pour compter le nombre de champs
    Par kichemans dans le forum Requêtes
    Réponses: 4
    Dernier message: 24/04/2006, 14h12
  5. compter un nombre de champ lié
    Par laurent05 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 14/04/2006, 16h44

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