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 dans excel des résultats d'un sondage diffusé dans Word


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau candidat au Club
    Femme Profil pro
    Inscrit en
    Mars 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Mars 2012
    Messages : 2
    Par défaut Récupération dans excel des résultats d'un sondage diffusé dans Word
    Bonjour à tous
    Je dois diffuser une enquête de satisfaction clients sous Word. Pour cela, j'ai créé des cases à cocher, des cases d'option et des zones de textes à remplir par les sondés.
    Pour le traitement des résultats de ce questionnaire, plutôt que de recopier tout à la main, j'ai pensé importer automatiquement dans Excel les résultats et les traiter depuis Excel.
    J'ai donc dans Excel un code VBA qui ouvre mon document Word, qui le parcours.
    Mon problème est que je ne sais pas comment récupérer la valeur des cases cochées par mon utilisateur. Il faudrait que mon code fasse pour chaque champs du formulaire
    -> Si la valeur = True (c'est-à-dire si la case est cochée)
    ->Récupérer le caption (qui correspond à la légende de la case, c'est-à-dire le texte qui apparaît après le bouton (Par exemple : si ma question est "Etes-vous satisfait" il y aura deux caption : "oui" et "non")
    ->Et recopier ce caption (donc dans l'exemple, oui ou non selon lequel est coché) dans une cellule Excel
    ->Si la valeur = False (c'est-à-dire si la case n'est pas cochée)
    ->Passer au champs suivant.

    Malgré mes recherches, je ne parviens pas à résoudre mon problème.
    Auriez-vous des pistes pour m'aider à avancer ?

    Merci d'avance

    Coralie

  2. #2
    Expert confirmé
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Par défaut
    Salut, via la FAQ http://excel.developpez.com/faq/?page=Word et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveDocument.FormFields(x).Result

  3. #3
    Nouveau candidat au Club
    Femme Profil pro
    Inscrit en
    Mars 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Mars 2012
    Messages : 2
    Par défaut
    Bonjour,

    Voici mon code :

    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
    25
    26
     
    Private Sub CommandButton1_Click()
      Dim WordApp As Object, LeNouveauSondage As Object, feuille As Worksheet, nb_champs As Integer
      Dim i As Integer, j As Integer, Repertoire As FileDialog, derlig As Long, nbfics As Long
      Set WordApp = CreateObject("Word.Application")
      Set feuille = ThisWorkbook.Worksheets("Feuil1")
      WordApp.Visible = True
      With Application.FileDialog(msoFileDialogOpen)
        .Filters.Add "documents Word", "*.doc", 1
        .InitialFileName = "C:\Documents and Settings\All Users"
        .AllowMultiSelect = True
        .Title = "Choisissez le fichier à importer"
        .Show
        nbfics = .SelectedItems.Count
      End With
        For i = 1 To nbfics
          Set LeNouveauSondage = WordApp.Documents.Open(Application.FileDialog(msoFileDialogOpen).SelectedItems(i))
          nb_champs = LeNouveauSondage.fields.Count
          derlig = feuille.Cells.SpecialCells(xlCellTypeLastCell).Row + 1
          For j = 1 To nb_champs
             feuille.Cells(derlig, j) = LeNouveauSondage.fields(j).result
          Next j
          LeNouveauSondage.Close
       Next i
      Set LeNouveauSondage = Nothing
    End Sub


    Comme tu peux le voir, j'ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    For j = 1 To nb_champs
             feuille.Cells(derlig, j) = LeNouveauSondage.fields(j).result
    Next j
    Tout le reste du code fonctionne, c'est cette partie qui me pose problème. J'ai donc demandé à excel de m'afficher le résultat dans une MsgBox. Je te met en PJ le résultat de la MsgBox. J'ai l'impression que Excel ne parviens pas à lire la valeur du formulaire Word.
    Qu'en penses-tu ?


    Coralie
    Images attachées Images attachées  

Discussions similaires

  1. Réponses: 4
    Dernier message: 30/04/2012, 22h22
  2. Réponses: 0
    Dernier message: 16/03/2012, 10h03
  3. [AC-2002] export dans excel du résultat d'une requête avec paramètre
    Par marcelisa2 dans le forum VBA Access
    Réponses: 6
    Dernier message: 31/10/2010, 21h01
  4. récupération des résultat de recherche google personnalisé dans un fichier
    Par bouzayani2010 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 14/04/2010, 14h34
  5. [Toutes versions] Exporter dans Excel les résultats de checkbox, combobox et textbox
    Par mgdmgd dans le forum VBA PowerPoint
    Réponses: 2
    Dernier message: 09/10/2009, 11h41

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