Extraire sur excel les retours sondage de formulaires Word

Fermé
romanza Messages postés 250 Date d'inscription samedi 27 janvier 2007 Statut Membre Dernière intervention 10 avril 2023 - 9 févr. 2014 à 20:35
romanza Messages postés 250 Date d'inscription samedi 27 janvier 2007 Statut Membre Dernière intervention 10 avril 2023 - 15 févr. 2014 à 10:07
Bonsoir,

Je ne maîtrise pas le VBA mais je sais que la résolution de mon problème passe par là.


Je reçois en retour mail des formulaires word renseignés que je vais placer dans un dossier.

Je souhaite à partir d'une feuille Excel avoir une macro
- qui ouvre l'explorateur et me permette ainside choisir le dossier contenant mes retours enregistrés,
-qui va extraire les champs de chaque formulaire et les mettre dans la feuille Excel qui servira ainsi de base de données.

Merci à vous



A voir également:

7 réponses

romanza Messages postés 250 Date d'inscription samedi 27 janvier 2007 Statut Membre Dernière intervention 10 avril 2023 2
10 févr. 2014 à 17:08
Bonjour,

Ci-joint le fichier. Il y a des données textes, des cases à cocher et des listes déroulantes. tous les champs doivent se retrouver dans la base de donnée excel


https://www.cjoint.com/c/DBkrhjXD8iV

Merci pour votre réponse
1
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
10 févr. 2014 à 17:29
Bonjour,

Ce n'est pas optimal, un formulaire Word :
- nommage des fichiers ;
- saisie illicite possible ;
-...
Mieux vaudrait un formulaire Web alimentant une base de données (il y a des années, j'avais fait un formulaire qui remplissait un simple fichier texte que Excel digérait donc facilement).
Mais il est peut-être trop tard pour changer de stratégie. Tout le monde remplit-il correctement les formulaires Word ?

Ta question rejoint un peu celle-ci :
https://www.developpez.net/forums/d1058192/logiciels/microsoft-office/word/publipostage-inverse-word-excel/#post5875211

A+
0
dlt-pan Messages postés 481 Date d'inscription jeudi 17 mai 2007 Statut Membre Dernière intervention 23 décembre 2014 67
Modifié par dlt-pan le 10/02/2014 à 15:17
bonjour,
pouvez vous joindre un fichier word (avec Cjoint.com) pour exemple.
vous collez le lien dans votre reponse.
est ce que tous les words ont la même structure ?
voulez vous extraire toutes les données ?
comment voulez vous organiser les données sur excel ?


Ce que l'on conçoit bien s'énonce clairement,
Et les mots pour le dire arrivent aisément.
0
dlt-pan Messages postés 481 Date d'inscription jeudi 17 mai 2007 Statut Membre Dernière intervention 23 décembre 2014 67
11 févr. 2014 à 10:17
bonjour,
on peut developper une macro. j'attends de voir ce que tu decides. j'ai dejà un petit bout de code qui fonctionne pour word
nota : pourquoi ne pas faire le formulaire sous excel ?
0
romanza Messages postés 250 Date d'inscription samedi 27 janvier 2007 Statut Membre Dernière intervention 10 avril 2023 2
12 févr. 2014 à 18:35
Bonsoir, désolé pour la réponse tardive,

En cherchant j'ai trouvé la macro correspondante. La voici :

Par contre, je voudrais que l'utilisateur en cliquant sur le bouton de macro puisse d'abord choisir le répertoire pour ouvrir le dossier contenant les formulaire et non lui imposer un emplacement de dossier (en gras) mais je ne sais pas quel code et ou le mettre dans cette macro?
Merci

Sub import_client()
Dim Fich As Worksheet
Set Fich = ThisWorkbook.Worksheets("Clients")
chemin = "C:\Documents and Settings\Moi\Bureau\formulaires 1205\"
mesfichiers = Dir(chemin & "*.doc")
Dim Variables As Variant
Variables = Array("NOM", "PRENOM", "NuméroSS", "PasdeNumSS", "Datnaiss", "Paysnaiss", "Comnaiss", "Dept", "Nat", "Sexe", "Adresse", "CP", "Commune", "Télmob", "Télfixe", "mail", "Bourse", "SécuFranceOUI", "ADAssuré", "NomAssuré", "DatenaisAssuré", "LienAssuré", "Autresit", "EuroSuisse", "Plusde28")

nb_Champs = 24
num_row = 1
i = 0

For i = 0 To nb_Champs - 1
Fich.Cells(num_row, i + 1) = Variables(i)
Next i

Set FichierWord = CreateObject("word.application")
FichierWord.Visible = True
FichierWord.DisplayAlerts = False

Do While mesfichiers <> ""
If mesfichiers <> "." And mesfichiers <> ".." And mesfichiers <> "clients.doc" Then
monDocument = chemin & mesfichiers
FichierWord.documents.Open Filename:=monDocument, ReadOnly:=True
num_row = num_row + 1
num_col = 1
For i = 0 To nb_Champs - 1
Fich.Cells(num_row, i + 1) = FichierWord.activedocument.formfields(Variables(i)).result
Next i
FichierWord.documents.Close (0)
End If
mesfichiers = Dir
Loop
FichierWord.Quit

End Sub
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
dlt-pan Messages postés 481 Date d'inscription jeudi 17 mai 2007 Statut Membre Dernière intervention 23 décembre 2014 67
13 févr. 2014 à 11:08
bonjour tu peux ajouter :
nom = Application.GetOpenFilename
If nom = "faux" Then
Exit Sub
End If
Workbooks.Open Filename:=nom
0
romanza Messages postés 250 Date d'inscription samedi 27 janvier 2007 Statut Membre Dernière intervention 10 avril 2023 2
15 févr. 2014 à 10:07
Bonjour,

Si j'ai bien compris, je rajoute cela sur ma macro juste avant End Sub?
0
romanza Messages postés 250 Date d'inscription samedi 27 janvier 2007 Statut Membre Dernière intervention 10 avril 2023 2
10 févr. 2014 à 18:14
peux-tu m'indiquer comment je pourrai utiliser ton formulaire Web?
-1
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
11 févr. 2014 à 10:13
Bonjour,

Je ne l'ai plus. Et c'est vraiment la seule chose que j'ai faite en html/PHP.
Déjà, il faudrait que tu aies un serveur gérant le PHP sur lequel tu puisses placer le formulaire en question et auquel les gens auraient accès.
Mon formulaire se basait sur ce genre de choses : https://openclassrooms.com/fr/courses/1603881-apprenez-a-creer-votre-site-web-avec-html5-et-css3/1607171-creez-des-formulaires
Apparemment, Adobe fait un produit tout intégré gratuit : https://helpx.adobe.com/fr/acrobat/kb/end-of-support-formscentral.html
Si tu gardes Word, jette un oeil à mon lien d'hier.

A+
0