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

Macros et VBA Excel Discussion :

Récupération valeur signets Word depuis Excel


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de scrouet
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 280
    Par défaut Récupération valeur signets Word depuis Excel
    Bonjour.

    J'ai besoin d'automatiser la lecture de fiches standardisées au format Word pour en faire une synthèse sous forme de tableau Excel.
    Pour ce faire, je récupère les valeurs qui m'intéressent dans les cases de tableau des fiches pour les copier sous Excel. L'ennui c'est que certaines fiches sont constituées de champs de type liste de choix, dont je n'arrive pas à récupérer la valeur.
    Quelqu'un aurait-il une solution ?

    Petite précision : les champs sont associés à un signet nommé.

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Plusieurs questions
    certaines fiches sont constituées de champs de type liste de choix
    Comment sont constituées ces listes de choix ? Case à cocher ? Listbox de barre d'outils contrôles ?
    Pour aller plus loin il serait bien que tu nous mettes le code pour ouvrir ton doc, ça nous évitera d'avoir à l'écrire pour d'éventuels tests
    A+

  3. #3
    Membre éclairé Avatar de scrouet
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 280
    Par défaut
    Les listes sont des listes déroulantes. C'est en tout cas ce que m'indique les propriétés du champ car je ne peux modifier la valeur de ce type de champ.

    Pour ouvrir le document Word depuis Excel, j'utilise le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Set docFiche = appWord.Documents.Open(Filename:=strFicFiche, ReadOnly:=True)
     
    If docFiche.ProtectionType <> wdNoProtection Then
      docFiche.Unprotect
    End If

  4. #4
    Membre éclairé Avatar de scrouet
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 280
    Par défaut
    Voici un exemple de champs présents dans le document. Je n'ai pas de difficultés à récupérer le premier, de type texte. En revanche, c'est le seconde, de type liste déroulante, qui me pose problème.
    Fichiers attachés Fichiers attachés

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Teste ça, si tu peux en tirer quelque chose...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim FF As FormField, Nom As String
        For Each FF In docFiche.FormFields
            Nom = FF.Name 'nom de la liste déroulante
            MsgBox Nom & "  " & FF.Result 'Te donne la donnée affichée
        Next
    Courage, tu "les" auras

    Edit
    Si tu as un pb avec la déclaration "As FormField", remplace par "as object"

  6. #6
    Membre éclairé Avatar de scrouet
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    280
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 280
    Par défaut
    Ca marche très bien ! Merci !
    En revanche, comme certaines fiches n'ont pas tous les champs (voire aucun), j'aimerais tester l'existence du champ. Y aurait-il une solution relativement simple et efficace qui ne passe pas par une boucle sur tous les champs ou une interception d'erreur ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Récupération de CustomDocumentProperties Word depuis macro Excel
    Par Apo_fr dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 03/07/2014, 14h45
  2. [XL-2003] Effacer des signets dans un document word depuis excel
    Par scoubi77 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 16/03/2010, 21h20
  3. Lire signets WORD depuis EXCEL
    Par nico75 dans le forum VBA Word
    Réponses: 5
    Dernier message: 15/07/2008, 23h34
  4. coller une plage dans word depuis excel
    Par tarmin dans le forum VBA Word
    Réponses: 7
    Dernier message: 18/01/2006, 10h16
  5. Ouverture d'un template Word depuis Excel
    Par modus vivendi dans le forum VBA Word
    Réponses: 1
    Dernier message: 14/08/2005, 10h29

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