Excel et extraction
pierreh59
Messages postés
227
Date d'inscription
Statut
Membre
Dernière intervention
-
m@rina Messages postés 23923 Date d'inscription Statut Contributeur Dernière intervention -
m@rina Messages postés 23923 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai mon gestionnaire de parc qui m'a sorti une extraction des postes de l'entreprise sous la forme d'un fichier excel avec 10 onglets (qui correspond à 10 sites differents) et 5 colonnes (par onglet) le nom de ces colonnes : 1/nom pc 2/niveau 3/utilisateur 4/memoire
Je souhaite exporter chaque ligne vers un document "préformaté" où l'on retrouve les éléments
nom pc :
niveau :
utilisateur :
memoire :
et bien sur pour chaque fiche j'aimerais que chaque fiche soit enregistrer sous le nom de la machine
et d'autres lignes qui sont à remplir manuellement
comment faire ? je suis une m@$¤de en excel mais g 1100 postes à gérer
merciiiiiiiiiiiiiiiiiiiiiiiiiiiii
je suis dans le 80 prêt à me deplacer dans les environs LILLE/AMIENS ou sur cette route pour me faire cette manip
merci
J'ai mon gestionnaire de parc qui m'a sorti une extraction des postes de l'entreprise sous la forme d'un fichier excel avec 10 onglets (qui correspond à 10 sites differents) et 5 colonnes (par onglet) le nom de ces colonnes : 1/nom pc 2/niveau 3/utilisateur 4/memoire
Je souhaite exporter chaque ligne vers un document "préformaté" où l'on retrouve les éléments
nom pc :
niveau :
utilisateur :
memoire :
et bien sur pour chaque fiche j'aimerais que chaque fiche soit enregistrer sous le nom de la machine
et d'autres lignes qui sont à remplir manuellement
comment faire ? je suis une m@$¤de en excel mais g 1100 postes à gérer
merciiiiiiiiiiiiiiiiiiiiiiiiiiiii
je suis dans le 80 prêt à me deplacer dans les environs LILLE/AMIENS ou sur cette route pour me faire cette manip
merci
A voir également:
- Excel et extraction
- Word et excel gratuit - Guide
- Liste déroulante excel - Guide
- Si et excel - Guide
- Déplacer colonne excel - Guide
- Excel moyenne - Guide
13 réponses
salut
quelle version d'excel et de word as-tu ?
pour faire tes fiches tu peux passer par un publipostage avec word et ton fichier excel comme source des données
2007 te permet de faire un document par page donc par enregistrement donc par pc dans ton cas
pour les versions antérieures je ne suis pas sûr
par contre pour donner à chaque fichier le nom du pc il doit surement falloir passer par une macro et là je peux rien pour toi
quelle version d'excel et de word as-tu ?
pour faire tes fiches tu peux passer par un publipostage avec word et ton fichier excel comme source des données
2007 te permet de faire un document par page donc par enregistrement donc par pc dans ton cas
pour les versions antérieures je ne suis pas sûr
par contre pour donner à chaque fichier le nom du pc il doit surement falloir passer par une macro et là je peux rien pour toi
Bonjour,
Ton publipostage (quelle que soit la version) va te créer un document constitué d'autant de sections (pages) que de machines.
Puisque tu as 10 onglets, tu devras recommencer 10 fois... Mais rassure toi c'est extrêmement rapide.
Si ensuite tu souhaites séparer chacun de ces documents résultats du publipostage en autant de fichiers qu'il y a de page, voici la solution :
https://support.microsoft.com/en-us/help/216201
rubrique : séparer les fichiers par section.
m@rina
Ton publipostage (quelle que soit la version) va te créer un document constitué d'autant de sections (pages) que de machines.
Puisque tu as 10 onglets, tu devras recommencer 10 fois... Mais rassure toi c'est extrêmement rapide.
Si ensuite tu souhaites séparer chacun de ces documents résultats du publipostage en autant de fichiers qu'il y a de page, voici la solution :
https://support.microsoft.com/en-us/help/216201
rubrique : séparer les fichiers par section.
m@rina
iMPECCABLE TOUT CA !!!!!
il me reste plus qu'à trouver la soluce pour enregistrer chaque fiche
Merci bcp !
il me reste plus qu'à trouver la soluce pour enregistrer chaque fiche
Merci bcp !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Oui, la dernière difficulté réside dans l'enregistrement du fichier avec le nom correct... mais ce n'est pas insurmontable ! ;)
J'ai regardé la macro d'un peu plus près. Je constate qu'elle n'est pas nickel chrome mais bon... ça ira.
Quand tu lances la macro, il faudra que le point d'insertion se trouve dans la première section.
Ensuite, dans la macro, il faut créer une variable pour le nom. Supposant que c'est le 4e mot qui va servir de nom au fichier (si c'est pas le 4e, tu changes) :
à mettre après la fonction de copy
et à la place de ActiveDocument.SaveAs FileName:="test_" & DocNum & ".doc"
tu mettras :
Voilà, ça devrait fonctionner.
m@rina
J'ai regardé la macro d'un peu plus près. Je constate qu'elle n'est pas nickel chrome mais bon... ça ira.
Quand tu lances la macro, il faudra que le point d'insertion se trouve dans la première section.
Ensuite, dans la macro, il faut créer une variable pour le nom. Supposant que c'est le 4e mot qui va servir de nom au fichier (si c'est pas le 4e, tu changes) :
Dim Nom 'à mettre au début de la macro ... Set nom = ActiveDocument.Bookmarks("\Section").Range.Words(4)
à mettre après la fonction de copy
et à la place de ActiveDocument.SaveAs FileName:="test_" & DocNum & ".doc"
tu mettras :
ActiveDocument.SaveAs FileName:=nom & ".doc"
Voilà, ça devrait fonctionner.
m@rina
Merci
de toutes les réponses......... mais étant very noob sur excel.........
à part les errers récurrentes, j'ai réussi simplement à fermer mes publipostages.........
oppps
de toutes les réponses......... mais étant very noob sur excel.........
à part les errers récurrentes, j'ai réussi simplement à fermer mes publipostages.........
oppps
j'ai mis le 14 mots comme reference du nom de fichier,
j'execute la macro ma lettre disparait et je ne trouve rien d'enregistrer
j'execute la macro ma lettre disparait et je ne trouve rien d'enregistrer
héhé voilà la quiche : je n'ai pas fusionné avant l'execution de la macro !!!
par contre j'ai une erreur voila le n° et le script
erreur d'execution 4192 la commande a échoué
Sub BreakOnSection()
Dim Nom
' Used to set criteria for moving through the document by section.
Application.Browser.Target = wdBrowseSection
'A mailmerge document ends with a section break next page.
'Subtracting one from the section count stop error message.
For i = 1 To ((ActiveDocument.Sections.Count) - 1)
'Select and copy the section text to the clipboard
Set Nom = ActiveDocument.Bookmarks("\Section").Range.Words(16)
'Create a new document to paste text from clipboard.
Documents.Add
Selection.Paste
' Removes the break that is copied at the end of the section, if any.
Selection.MoveUp Unit:=wdLine, Count:=1, Extend:=wdExtend
Selection.Delete Unit:=wdCharacter, Count:=1
ChangeFileOpenDirectory "C:\fiches"
DocNum = DocNum + 1
ActiveDocument.SaveAs FileName:=Nom & ".doc" <------- LIGNE SURLIGNEE
ActiveDocument.Close
' Move the selection to the next section in the document
Application.Browser.Next
Next i
ActiveDocument.Close savechanges:=wdDoNotSaveChanges
End Sub
Merci
par contre j'ai une erreur voila le n° et le script
erreur d'execution 4192 la commande a échoué
Sub BreakOnSection()
Dim Nom
' Used to set criteria for moving through the document by section.
Application.Browser.Target = wdBrowseSection
'A mailmerge document ends with a section break next page.
'Subtracting one from the section count stop error message.
For i = 1 To ((ActiveDocument.Sections.Count) - 1)
'Select and copy the section text to the clipboard
Set Nom = ActiveDocument.Bookmarks("\Section").Range.Words(16)
'Create a new document to paste text from clipboard.
Documents.Add
Selection.Paste
' Removes the break that is copied at the end of the section, if any.
Selection.MoveUp Unit:=wdLine, Count:=1, Extend:=wdExtend
Selection.Delete Unit:=wdCharacter, Count:=1
ChangeFileOpenDirectory "C:\fiches"
DocNum = DocNum + 1
ActiveDocument.SaveAs FileName:=Nom & ".doc" <------- LIGNE SURLIGNEE
ActiveDocument.Close
' Move the selection to the next section in the document
Application.Browser.Next
Next i
ActiveDocument.Close savechanges:=wdDoNotSaveChanges
End Sub
Merci
Bonsoir,
Ah ben oui, si la fusion n'était pas faite, ça ne risquait pas de marcher... Je ne sais pas pourquoi, mais beaucoup d'utilsiateurs s'arrêtent juste avant de faire la fusion... Faudra unn jour qu'on m'explique pourquoi !!! :D
Concernant la macro, il te manque l'antislash à la fin du chemin :
ChangeFileOpenDirectory "C:\fiches\"
m@rina
Ah ben oui, si la fusion n'était pas faite, ça ne risquait pas de marcher... Je ne sais pas pourquoi, mais beaucoup d'utilsiateurs s'arrêtent juste avant de faire la fusion... Faudra unn jour qu'on m'explique pourquoi !!! :D
Concernant la macro, il te manque l'antislash à la fin du chemin :
ChangeFileOpenDirectory "C:\fiches\"
m@rina
Re çà commence à marcher
Les deux derniers points :
1/ Je trouve sur c:\fiches un seul fichier nommé nom.doc
2/ et je souhaite que la "section" fasse deux pages et non une à première vue (quand la macro travaille je vois 1400 ouvertures de doc word)
Merci !
Les deux derniers points :
1/ Je trouve sur c:\fiches un seul fichier nommé nom.doc
2/ et je souhaite que la "section" fasse deux pages et non une à première vue (quand la macro travaille je vois 1400 ouvertures de doc word)
Merci !
Je ne comprends pas ta demande. Les sections se font toutes seules. Ce n'est pas à toi de décider... Si au départ, ton document principal de fusion fait 2 pages, chaque section fera 2 pages. Si le document fait 5 pages, chaque fusion fera 5 pages... Tout dépend de ton doc principal de fusion.
Quant au nom, je ne comprends pas... J'ai vérifié la macro, je l'ai testée, j'ai juste modifié un détail. Je la remets ici, elle fonctionne parfaitement. Elle doit bien être exécutée sur le document fusionné.
m@rina
Quant au nom, je ne comprends pas... J'ai vérifié la macro, je l'ai testée, j'ai juste modifié un détail. Je la remets ici, elle fonctionne parfaitement. Elle doit bien être exécutée sur le document fusionné.
Sub BreakOnSection2() Dim Nom Selection.HomeKey Unit:=wdStory Application.Browser.Target = wdBrowseSection For i = 1 To ((ActiveDocument.Sections.Count) - 1) Set Nom = ActiveDocument.Bookmarks("\Section").Range.Words(3) Documents.Add Selection.Paste ' supprime le saut de section Selection.MoveUp Unit:=wdLine, Count:=1, Extend:=wdExtend Selection.Delete Unit:=wdCharacter, Count:=1 ChangeFileOpenDirectory "C:\fiches\" DocNum = DocNum + 1 ActiveDocument.saveas FileName:=Nom & ".doc" ActiveDocument.Close Application.Browser.Next Next i End Sub
m@rina