voila j'ai un document Word pour faire du publipostage avec un fichier
excel pour les donn=E9es.
je clic sur "fusionner vers un autre document" ensuite je lance une
macro qui me decoupe ce dernier fichier et les enregistre sur mon c: ,
mais je ne sais pas comment passer le nom de chaque fichier qui est
contenu dans mon document excel en colonne T.
est ce possible ?
mon fichier word & excel se trouve dans la meme repertoire.
dans la colonne T il y aune formule
=3DCONCATENER("nom_FRI_";TEXTE(U2;"aaammjj");"_";V2;"_";J2;"_";H2)
plus de souci au nivau de mon second probleme mais j'ai toujours l'autre ? une idee please ?
Oh oui : suivez bien ce qu'est ActiveDocument dans votre macro !
Après ActiveDocument.SaveAs FileName:=NomFichier vous oubliez ActiveDocument.Close qui était pourtant bien là dans votre macro d'origine.
Résultat : votre document actif est toujours la même page copiée. Comme vous supprimez le 1er paragraphe, la macro essaie ensuite le deuxième qui n'est sûrement pas un nom de fichier valide d'où l'erreur évidente.
À tous les débutants en VBA je conseille de ne JAMAIS copier une macro sans avoir compris ligne à ligne ce qu'elle fait. Il est rarissime qu'une macro marche au premier coup. C'est la rançon à payer d'un langage simple, peu structuré et peu contraignant. Donc ça DOIT beuguer. Et quand on ne comprend pas pourquoi ça beugue, alors on devient FOU.
Anacoluthe « Le principal est de débuter. » - Georges Charles HUYSMANS
Bonjour !
'sleg' nous a écrit ...
plus de souci au nivau de mon second probleme mais j'ai toujours
l'autre ?
une idee please ?
Oh oui : suivez bien ce qu'est ActiveDocument dans votre macro !
Après ActiveDocument.SaveAs FileName:=NomFichier
vous oubliez ActiveDocument.Close
qui était pourtant bien là dans votre macro d'origine.
Résultat : votre document actif est toujours la même page
copiée. Comme vous supprimez le 1er paragraphe, la macro
essaie ensuite le deuxième qui n'est sûrement pas un nom
de fichier valide d'où l'erreur évidente.
À tous les débutants en VBA je conseille de ne JAMAIS copier
une macro sans avoir compris ligne à ligne ce qu'elle fait.
Il est rarissime qu'une macro marche au premier coup.
C'est la rançon à payer d'un langage simple, peu structuré
et peu contraignant. Donc ça DOIT beuguer. Et quand on ne
comprend pas pourquoi ça beugue, alors on devient FOU.
Anacoluthe
« Le principal est de débuter. »
- Georges Charles HUYSMANS
plus de souci au nivau de mon second probleme mais j'ai toujours l'autre ? une idee please ?
Oh oui : suivez bien ce qu'est ActiveDocument dans votre macro !
Après ActiveDocument.SaveAs FileName:=NomFichier vous oubliez ActiveDocument.Close qui était pourtant bien là dans votre macro d'origine.
Résultat : votre document actif est toujours la même page copiée. Comme vous supprimez le 1er paragraphe, la macro essaie ensuite le deuxième qui n'est sûrement pas un nom de fichier valide d'où l'erreur évidente.
À tous les débutants en VBA je conseille de ne JAMAIS copier une macro sans avoir compris ligne à ligne ce qu'elle fait. Il est rarissime qu'une macro marche au premier coup. C'est la rançon à payer d'un langage simple, peu structuré et peu contraignant. Donc ça DOIT beuguer. Et quand on ne comprend pas pourquoi ça beugue, alors on devient FOU.
Anacoluthe « Le principal est de débuter. » - Georges Charles HUYSMANS
sleg
Bonjour,
merci apres ajout de la ligne de code manquante toujours la meme erreur ??
en debogage j'arrive sur cette ligne. ActiveDocument.SaveAs FileName:=nomFichier
voici le code de la macro : Sub test01() ' Used to set criteria for moving through the document by section. Application.Browser.Target = wdBrowseSection
'A mailmerge documents 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 ActiveDocument.Bookmarks("Section").Range.Copy
'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:"
' definir le nom du fichier de sauveagrde pour chaque enregistrement nomFichier = ActiveDocument.Paragraphs(1).Range.Text ActiveDocument.Paragraphs(1).Range.Delete ActiveDocument.SaveAs FileName:=nomFichier ActiveDocument.Close Application.DisplayAlerts = False
' Move the selection to the next section in the document Application.Browser.Next Next i ActiveDocument.Close savechanges:=wdDoNotSaveChanges End Sub
On 21 oct, 14:18, Anacoluthe wrote:
Bonjour !
'sleg' nous a écrit ...
> plus de souci au nivau de mon second probleme mais j'ai toujours > l'autre ? > une idee please ?
Oh oui : suivez bien ce qu'est ActiveDocument dans votre macro !
Après ActiveDocument.SaveAs FileName:=NomFichier vous oubliez ActiveDocument.Close qui était pourtant bien là dans votre macro d'origine.
Résultat : votre document actif est toujours la même page copiée. Comme vous supprimez le 1er paragraphe, la macro essaie ensuite le deuxième qui n'est sûrement pas un nom de fichier valide d'où l'erreur évidente.
À tous les débutants en VBA je conseille de ne JAMAIS copier une macro sans avoir compris ligne à ligne ce qu'elle fait. Il est rarissime qu'une macro marche au premier coup. C'est la rançon à payer d'un langage simple, peu structuré et peu contraignant. Donc ça DOIT beuguer. Et quand on ne comprend pas pourquoi ça beugue, alors on devient FOU.
Anacoluthe « Le principal est de débuter. » - Georges Charles HUYSMANS
Bonjour,
merci apres ajout de la ligne de code manquante toujours la meme
erreur ??
en debogage j'arrive sur cette ligne.
ActiveDocument.SaveAs FileName:=nomFichier
voici le code de la macro :
Sub test01()
' Used to set criteria for moving through the document by section.
Application.Browser.Target = wdBrowseSection
'A mailmerge documents 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
ActiveDocument.Bookmarks("Section").Range.Copy
'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:"
' definir le nom du fichier de sauveagrde pour chaque enregistrement
nomFichier = ActiveDocument.Paragraphs(1).Range.Text
ActiveDocument.Paragraphs(1).Range.Delete
ActiveDocument.SaveAs FileName:=nomFichier
ActiveDocument.Close
Application.DisplayAlerts = False
' Move the selection to the next section in the document
Application.Browser.Next
Next i
ActiveDocument.Close savechanges:=wdDoNotSaveChanges
End Sub
On 21 oct, 14:18, Anacoluthe <nopub_anacolu...@Ouanadoo.fr> wrote:
Bonjour !
'sleg' nous a écrit ...
> plus de souci au nivau de mon second probleme mais j'ai toujours
> l'autre ?
> une idee please ?
Oh oui : suivez bien ce qu'est ActiveDocument dans votre macro !
Après ActiveDocument.SaveAs FileName:=NomFichier
vous oubliez ActiveDocument.Close
qui était pourtant bien là dans votre macro d'origine.
Résultat : votre document actif est toujours la même page
copiée. Comme vous supprimez le 1er paragraphe, la macro
essaie ensuite le deuxième qui n'est sûrement pas un nom
de fichier valide d'où l'erreur évidente.
À tous les débutants en VBA je conseille de ne JAMAIS copier
une macro sans avoir compris ligne à ligne ce qu'elle fait.
Il est rarissime qu'une macro marche au premier coup.
C'est la rançon à payer d'un langage simple, peu structuré
et peu contraignant. Donc ça DOIT beuguer. Et quand on ne
comprend pas pourquoi ça beugue, alors on devient FOU.
Anacoluthe
« Le principal est de débuter. »
- Georges Charles HUYSMANS
merci apres ajout de la ligne de code manquante toujours la meme erreur ??
en debogage j'arrive sur cette ligne. ActiveDocument.SaveAs FileName:=nomFichier
voici le code de la macro : Sub test01() ' Used to set criteria for moving through the document by section. Application.Browser.Target = wdBrowseSection
'A mailmerge documents 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 ActiveDocument.Bookmarks("Section").Range.Copy
'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:"
' definir le nom du fichier de sauveagrde pour chaque enregistrement nomFichier = ActiveDocument.Paragraphs(1).Range.Text ActiveDocument.Paragraphs(1).Range.Delete ActiveDocument.SaveAs FileName:=nomFichier ActiveDocument.Close Application.DisplayAlerts = False
' Move the selection to the next section in the document Application.Browser.Next Next i ActiveDocument.Close savechanges:=wdDoNotSaveChanges End Sub
On 21 oct, 14:18, Anacoluthe wrote:
Bonjour !
'sleg' nous a écrit ...
> plus de souci au nivau de mon second probleme mais j'ai toujours > l'autre ? > une idee please ?
Oh oui : suivez bien ce qu'est ActiveDocument dans votre macro !
Après ActiveDocument.SaveAs FileName:=NomFichier vous oubliez ActiveDocument.Close qui était pourtant bien là dans votre macro d'origine.
Résultat : votre document actif est toujours la même page copiée. Comme vous supprimez le 1er paragraphe, la macro essaie ensuite le deuxième qui n'est sûrement pas un nom de fichier valide d'où l'erreur évidente.
À tous les débutants en VBA je conseille de ne JAMAIS copier une macro sans avoir compris ligne à ligne ce qu'elle fait. Il est rarissime qu'une macro marche au premier coup. C'est la rançon à payer d'un langage simple, peu structuré et peu contraignant. Donc ça DOIT beuguer. Et quand on ne comprend pas pourquoi ça beugue, alors on devient FOU.
Anacoluthe « Le principal est de débuter. » - Georges Charles HUYSMANS
Anacoluthe
Bonjour !
'sleg' nous a écrit ...
en debogage j'arrive sur cette ligne. ActiveDocument.SaveAs FileName:=nomFichier
nomFichier n'est pas un nom de fichier correct ou existe déjà Revoyez svp tout votre document de fusion
Anacoluthe « Les erreurs sont les portes de la découverte. » - James JOYCE
Bonjour !
'sleg' nous a écrit ...
en debogage j'arrive sur cette ligne.
ActiveDocument.SaveAs FileName:=nomFichier
nomFichier n'est pas un nom de fichier correct ou existe déjà
Revoyez svp tout votre document de fusion
Anacoluthe
« Les erreurs sont les portes de la découverte. »
- James JOYCE
> en debogage j'arrive sur cette ligne. > ActiveDocument.SaveAs FileName:=nomFichier
nomFichier n'est pas un nom de fichier correct ou existe déjà Revoyez svp tout votre document de fusion
Anacoluthe « Les erreurs sont les portes de la découverte. » - James JOYCE
Anacoluthe
Bonjour !
'sleg' nous a écrit ...
voici les fichiers http://www.nelty.fr/fichiers/fiche critique.zip.
J'ai jeté un rapide coup d'oeil : il saute aux yeux comme que je vous le suggérais précédemment :-s que vous ne composez PAS un nom de fichier valide...
De plus le publipostage n'est pas adapté aux formulaires :-(
Anacoluthe « Le principal est de débuter. » - Georges Charles HUYSMANS
Bonjour !
'sleg' nous a écrit ...
voici les fichiers
http://www.nelty.fr/fichiers/fiche critique.zip.
J'ai jeté un rapide coup d'oeil : il saute aux yeux
comme que je vous le suggérais précédemment :-s
que vous ne composez PAS un nom de fichier valide...
De plus le publipostage n'est pas adapté aux formulaires :-(
Anacoluthe
« Le principal est de débuter. »
- Georges Charles HUYSMANS
voici les fichiers http://www.nelty.fr/fichiers/fiche critique.zip.
J'ai jeté un rapide coup d'oeil : il saute aux yeux comme que je vous le suggérais précédemment :-s que vous ne composez PAS un nom de fichier valide...
De plus le publipostage n'est pas adapté aux formulaires :-(
Anacoluthe « Le principal est de débuter. » - Georges Charles HUYSMANS
sleg
Bonsoir,
en gros je dois juste renommer nomfichier en autre chose dans la macro ??
bonne soiree.
On 22 oct, 19:07, Anacoluthe wrote:
Bonjour !
'sleg' nous a écrit ...
> voici les fichiers >http://www.nelty.fr/fichiers/fichecritique.zip.
J'ai jeté un rapide coup d'oeil : il saute aux yeux comme que je vous le suggérais précédemment :-s que vous ne composez PAS un nom de fichier valide...
De plus le publipostage n'est pas adapté aux formulaires :-(
Anacoluthe « Le principal est de débuter. » - Georges Charles HUYSMANS
Bonsoir,
en gros je dois juste renommer nomfichier en autre chose dans la
macro ??
bonne soiree.
On 22 oct, 19:07, Anacoluthe <nopub_anacolu...@Ouanadoo.fr> wrote:
Bonjour !
'sleg' nous a écrit ...
> voici les fichiers
>http://www.nelty.fr/fichiers/fichecritique.zip.
J'ai jeté un rapide coup d'oeil : il saute aux yeux
comme que je vous le suggérais précédemment :-s
que vous ne composez PAS un nom de fichier valide...
De plus le publipostage n'est pas adapté aux formulaires :-(
Anacoluthe
« Le principal est de débuter. »
- Georges Charles HUYSMANS
en gros je dois juste renommer nomfichier en autre chose dans la macro ??
bonne soiree.
On 22 oct, 19:07, Anacoluthe wrote:
Bonjour !
'sleg' nous a écrit ...
> voici les fichiers >http://www.nelty.fr/fichiers/fichecritique.zip.
J'ai jeté un rapide coup d'oeil : il saute aux yeux comme que je vous le suggérais précédemment :-s que vous ne composez PAS un nom de fichier valide...
De plus le publipostage n'est pas adapté aux formulaires :-(
Anacoluthe « Le principal est de débuter. » - Georges Charles HUYSMANS
Anacoluthe
Bonjour !
'sleg' nous a écrit ...
en gros je dois juste renommer nomfichier en autre chose dans la macro ??
Non ce n'est pas ça : votre macro devrait s'appliquer au document de fusion et non au document principal. C'est le document de fusion qu'il faut découper section par section et enregistrer sous un nomfichier chaque fois différent. Si votre macro est dans un module du document principal, ce qui est parfaitement envisageable, vous ne pouvez pas continuer à travailler sur ActiveDocument.
Par ailleurs, en faisant totalement abstraction de VBA qui vous pose trop de problèmes je pense, avez-vous regardé simplement ce que deviennent vos champs de formulaire dans votre document de fusion. Je dis bien le document de fusion, car je pense que le publipostage aussi vous pose quelques petits problèmes...
Ne le prenez pas mal : tout le monde a débuté un jour :-p
Anacoluthe « Le principal est de débuter. » - Georges Charles HUYSMANS
Bonjour !
'sleg' nous a écrit ...
en gros je dois juste renommer nomfichier en autre chose dans la
macro ??
Non ce n'est pas ça : votre macro devrait s'appliquer au document de fusion
et non au document principal. C'est le document de fusion qu'il faut
découper section par section et enregistrer sous un nomfichier chaque
fois différent. Si votre macro est dans un module du document principal,
ce qui est parfaitement envisageable, vous ne pouvez pas continuer à
travailler sur ActiveDocument.
Par ailleurs, en faisant totalement abstraction de VBA qui vous
pose trop de problèmes je pense, avez-vous regardé simplement
ce que deviennent vos champs de formulaire dans votre document
de fusion. Je dis bien le document de fusion, car je pense que
le publipostage aussi vous pose quelques petits problèmes...
Ne le prenez pas mal : tout le monde a débuté un jour :-p
Anacoluthe
« Le principal est de débuter. »
- Georges Charles HUYSMANS
en gros je dois juste renommer nomfichier en autre chose dans la macro ??
Non ce n'est pas ça : votre macro devrait s'appliquer au document de fusion et non au document principal. C'est le document de fusion qu'il faut découper section par section et enregistrer sous un nomfichier chaque fois différent. Si votre macro est dans un module du document principal, ce qui est parfaitement envisageable, vous ne pouvez pas continuer à travailler sur ActiveDocument.
Par ailleurs, en faisant totalement abstraction de VBA qui vous pose trop de problèmes je pense, avez-vous regardé simplement ce que deviennent vos champs de formulaire dans votre document de fusion. Je dis bien le document de fusion, car je pense que le publipostage aussi vous pose quelques petits problèmes...
Ne le prenez pas mal : tout le monde a débuté un jour :-p
Anacoluthe « Le principal est de débuter. » - Georges Charles HUYSMANS
sleg
BOnjour,
les champs de fusion disparraissent.
la macro est dans le normal.dot et je la lance a aprtir de mon document de fusion.
en gros il y a une solutio na mon problemem ou pas ?
BOnne journée.
On 22 oct, 21:39, Anacoluthe wrote:
Bonjour !
'sleg' nous a écrit ...
> en gros je dois juste renommer nomfichier en autre chose dans la > macro ??
Non ce n'est pas ça : votre macro devrait s'appliquer au document de fu sion et non au document principal. C'est le document de fusion qu'il faut découper section par section et enregistrer sous un nomfichier chaque fois différent. Si votre macro est dans un module du document principal , ce qui est parfaitement envisageable, vous ne pouvez pas continuer à travailler sur ActiveDocument.
Par ailleurs, en faisant totalement abstraction de VBA qui vous pose trop de problèmes je pense, avez-vous regardé simplement ce que deviennent vos champs de formulaire dans votre document de fusion. Je dis bien le document de fusion, car je pense que le publipostage aussi vous pose quelques petits problèmes...
Ne le prenez pas mal : tout le monde a débuté un jour :-p
Anacoluthe « Le principal est de débuter. » - Georges Charles HUYSMANS
BOnjour,
les champs de fusion disparraissent.
la macro est dans le normal.dot et je la lance a aprtir de mon
document de fusion.
en gros il y a une solutio na mon problemem ou pas ?
BOnne journée.
On 22 oct, 21:39, Anacoluthe <nopub_anacolu...@Ouanadoo.fr> wrote:
Bonjour !
'sleg' nous a écrit ...
> en gros je dois juste renommer nomfichier en autre chose dans la
> macro ??
Non ce n'est pas ça : votre macro devrait s'appliquer au document de fu sion
et non au document principal. C'est le document de fusion qu'il faut
découper section par section et enregistrer sous un nomfichier chaque
fois différent. Si votre macro est dans un module du document principal ,
ce qui est parfaitement envisageable, vous ne pouvez pas continuer à
travailler sur ActiveDocument.
Par ailleurs, en faisant totalement abstraction de VBA qui vous
pose trop de problèmes je pense, avez-vous regardé simplement
ce que deviennent vos champs de formulaire dans votre document
de fusion. Je dis bien le document de fusion, car je pense que
le publipostage aussi vous pose quelques petits problèmes...
Ne le prenez pas mal : tout le monde a débuté un jour :-p
Anacoluthe
« Le principal est de débuter. »
- Georges Charles HUYSMANS
la macro est dans le normal.dot et je la lance a aprtir de mon document de fusion.
en gros il y a une solutio na mon problemem ou pas ?
BOnne journée.
On 22 oct, 21:39, Anacoluthe wrote:
Bonjour !
'sleg' nous a écrit ...
> en gros je dois juste renommer nomfichier en autre chose dans la > macro ??
Non ce n'est pas ça : votre macro devrait s'appliquer au document de fu sion et non au document principal. C'est le document de fusion qu'il faut découper section par section et enregistrer sous un nomfichier chaque fois différent. Si votre macro est dans un module du document principal , ce qui est parfaitement envisageable, vous ne pouvez pas continuer à travailler sur ActiveDocument.
Par ailleurs, en faisant totalement abstraction de VBA qui vous pose trop de problèmes je pense, avez-vous regardé simplement ce que deviennent vos champs de formulaire dans votre document de fusion. Je dis bien le document de fusion, car je pense que le publipostage aussi vous pose quelques petits problèmes...
Ne le prenez pas mal : tout le monde a débuté un jour :-p
Anacoluthe « Le principal est de débuter. » - Georges Charles HUYSMANS
Anacoluthe
Bonjour !
'sleg' nous a écrit ...
les champs de fusion disparraissent.
Les 'champs de fusion' disparaissent tous à la fusion, c'est normal. Le problème est que certains 'champs de formulaire' disparaissent aussi
la macro est dans le normal.dot et je la lance a aprtir de mon document de fusion.
OK ça c'est bon. Vous devriez pouvoir terminer ce sujet concernant la découpe de la fusion en plusieurs fichiers. Pensez notamment à donner le nom complet, chemin compris, de chaque fichier. Je suis allé un peu vite moi-même en oubliant de vous dire d'éliminer le caractère saut de ligne en fin de paragraphe. Pensez à placer des espions dans votre code pour déboguer : vous auriez vite vu en quoi le nom de fichier n'est pas valide !
en gros il y a une solutio na mon problemem ou pas ?
Il y a SUREMENT une solution à votre problème :-p Mais il n'est pas certain qu'elle passe par Word, son publipostage et ses formulaires.
D'ailleurs j'avoue ne pas comprendre tout votre problème. En général on utilise UN formulaire, éventuellement prérempli avec certaines données, puis avec CE formulaire on renseigne une base de données. Remarquez qu'avec Word conçu pour imprimer ledit formulaire, la récupération des données n'est jamais simple d'où l'obsolescence aujourd'hui des formulaires Word...
Bon courage
(merci d'ouvrir une autre discussion au besoin ; celle-ci s'épuise)
Anacoluthe « Pour tout problème complexe il existe une solution simple, claire et fausse. » - Henry Louis MENCKEN
Bonjour !
'sleg' nous a écrit ...
les champs de fusion disparraissent.
Les 'champs de fusion' disparaissent tous à la fusion, c'est normal.
Le problème est que certains 'champs de formulaire' disparaissent aussi
la macro est dans le normal.dot et je la lance a aprtir de mon
document de fusion.
OK ça c'est bon. Vous devriez pouvoir terminer ce sujet
concernant la découpe de la fusion en plusieurs fichiers. Pensez
notamment à donner le nom complet, chemin compris, de chaque fichier.
Je suis allé un peu vite moi-même en oubliant de vous dire d'éliminer
le caractère saut de ligne en fin de paragraphe.
Pensez à placer des espions dans votre code pour déboguer : vous
auriez vite vu en quoi le nom de fichier n'est pas valide !
en gros il y a une solutio na mon problemem ou pas ?
Il y a SUREMENT une solution à votre problème :-p
Mais il n'est pas certain qu'elle passe par Word, son publipostage
et ses formulaires.
D'ailleurs j'avoue ne pas comprendre tout votre problème. En général
on utilise UN formulaire, éventuellement prérempli avec certaines
données, puis avec CE formulaire on renseigne une base de données.
Remarquez qu'avec Word conçu pour imprimer ledit formulaire, la
récupération des données n'est jamais simple d'où l'obsolescence
aujourd'hui des formulaires Word...
Bon courage
(merci d'ouvrir une autre discussion au besoin ; celle-ci s'épuise)
Anacoluthe
« Pour tout problème complexe il existe une solution simple, claire
et fausse. »
- Henry Louis MENCKEN
Les 'champs de fusion' disparaissent tous à la fusion, c'est normal. Le problème est que certains 'champs de formulaire' disparaissent aussi
la macro est dans le normal.dot et je la lance a aprtir de mon document de fusion.
OK ça c'est bon. Vous devriez pouvoir terminer ce sujet concernant la découpe de la fusion en plusieurs fichiers. Pensez notamment à donner le nom complet, chemin compris, de chaque fichier. Je suis allé un peu vite moi-même en oubliant de vous dire d'éliminer le caractère saut de ligne en fin de paragraphe. Pensez à placer des espions dans votre code pour déboguer : vous auriez vite vu en quoi le nom de fichier n'est pas valide !
en gros il y a une solutio na mon problemem ou pas ?
Il y a SUREMENT une solution à votre problème :-p Mais il n'est pas certain qu'elle passe par Word, son publipostage et ses formulaires.
D'ailleurs j'avoue ne pas comprendre tout votre problème. En général on utilise UN formulaire, éventuellement prérempli avec certaines données, puis avec CE formulaire on renseigne une base de données. Remarquez qu'avec Word conçu pour imprimer ledit formulaire, la récupération des données n'est jamais simple d'où l'obsolescence aujourd'hui des formulaires Word...
Bon courage
(merci d'ouvrir une autre discussion au besoin ; celle-ci s'épuise)
Anacoluthe « Pour tout problème complexe il existe une solution simple, claire et fausse. » - Henry Louis MENCKEN
sleg
voici la solution a mon problem.
et un grand merci pour votre aide.
Bonne journée.
Sub fusion1() ' Used to set criteria for moving through the document by section. Application.Browser.Target = wdBrowseSection
'A mailmerge documents 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 ActiveDocument.Bookmarks("Section").Range.Copy
'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 "chemin de stockage des documents"
' definir le nom du fichier de sauveagrde pour chaque enregistrement nomFichier = ActiveDocument.Paragraphs(1).Range.Text """"""""""""""""""""""""" nomFichier = Left(nomFichier, (Len(nomFichier) - 1)) """"""""""""""""""""""""" ActiveDocument.Paragraphs(1).Range.Delete ActiveDocument.SaveAs FileName:=nomFichier ActiveDocument.Close savechanges:=wdDoNotSaveChanges ActiveDocument.Paragraphs(1).Range.Delete
Application.DisplayAlerts = False
' Move the selection to the next section in the document Application.Browser.Next Next i ActiveDocument.Close savechanges:=wdDoNotSaveChanges End Sub
On 23 oct, 21:55, Anacoluthe wrote:
Bonjour !
'sleg' nous a écrit ...
> les champs de fusion disparraissent.
Les 'champs de fusion' disparaissent tous à la fusion, c'est normal. Le problème est que certains 'champs de formulaire' disparaissent aussi
> la macro est dans le normal.dot et je la lance a aprtir de mon > document de fusion.
OK ça c'est bon. Vous devriez pouvoir terminer ce sujet concernant la découpe de la fusion en plusieurs fichiers. Pensez notamment à donner le nom complet, chemin compris, de chaque fichier. Je suis allé un peu vite moi-même en oubliant de vous dire d'élimin er le caractère saut de ligne en fin de paragraphe. Pensez à placer des espions dans votre code pour déboguer : vous auriez vite vu en quoi le nom de fichier n'est pas valide !
> en gros il y a une solutio na mon problemem ou pas ?
Il y a SUREMENT une solution à votre problème :-p Mais il n'est pas certain qu'elle passe par Word, son publipostage et ses formulaires.
D'ailleurs j'avoue ne pas comprendre tout votre problème. En généra l on utilise UN formulaire, éventuellement prérempli avec certaines données, puis avec CE formulaire on renseigne une base de données. Remarquez qu'avec Word conçu pour imprimer ledit formulaire, la récupération des données n'est jamais simple d'où l'obsolescence aujourd'hui des formulaires Word...
Bon courage
(merci d'ouvrir une autre discussion au besoin ; celle-ci s'épuise)
Anacoluthe « Pour tout problème complexe il existe une solution simple, claire et fausse. » - Henry Louis MENCKEN
voici la solution a mon problem.
et un grand merci pour votre aide.
Bonne journée.
Sub fusion1()
' Used to set criteria for moving through the document by section.
Application.Browser.Target = wdBrowseSection
'A mailmerge documents 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
ActiveDocument.Bookmarks("Section").Range.Copy
'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 "\chemin de stockage des documents"
' definir le nom du fichier de sauveagrde pour chaque enregistrement
nomFichier = ActiveDocument.Paragraphs(1).Range.Text
"""""""""""""""""""""""""
nomFichier = Left(nomFichier, (Len(nomFichier) - 1))
"""""""""""""""""""""""""
ActiveDocument.Paragraphs(1).Range.Delete
ActiveDocument.SaveAs FileName:=nomFichier
ActiveDocument.Close savechanges:=wdDoNotSaveChanges
ActiveDocument.Paragraphs(1).Range.Delete
Application.DisplayAlerts = False
' Move the selection to the next section in the document
Application.Browser.Next
Next i
ActiveDocument.Close savechanges:=wdDoNotSaveChanges
End Sub
On 23 oct, 21:55, Anacoluthe <nopub_anacolu...@Ouanadoo.fr> wrote:
Bonjour !
'sleg' nous a écrit ...
> les champs de fusion disparraissent.
Les 'champs de fusion' disparaissent tous à la fusion, c'est normal.
Le problème est que certains 'champs de formulaire' disparaissent aussi
> la macro est dans le normal.dot et je la lance a aprtir de mon
> document de fusion.
OK ça c'est bon. Vous devriez pouvoir terminer ce sujet
concernant la découpe de la fusion en plusieurs fichiers. Pensez
notamment à donner le nom complet, chemin compris, de chaque fichier.
Je suis allé un peu vite moi-même en oubliant de vous dire d'élimin er
le caractère saut de ligne en fin de paragraphe.
Pensez à placer des espions dans votre code pour déboguer : vous
auriez vite vu en quoi le nom de fichier n'est pas valide !
> en gros il y a une solutio na mon problemem ou pas ?
Il y a SUREMENT une solution à votre problème :-p
Mais il n'est pas certain qu'elle passe par Word, son publipostage
et ses formulaires.
D'ailleurs j'avoue ne pas comprendre tout votre problème. En généra l
on utilise UN formulaire, éventuellement prérempli avec certaines
données, puis avec CE formulaire on renseigne une base de données.
Remarquez qu'avec Word conçu pour imprimer ledit formulaire, la
récupération des données n'est jamais simple d'où l'obsolescence
aujourd'hui des formulaires Word...
Bon courage
(merci d'ouvrir une autre discussion au besoin ; celle-ci s'épuise)
Anacoluthe
« Pour tout problème complexe il existe une solution simple, claire
et fausse. »
- Henry Louis MENCKEN
Sub fusion1() ' Used to set criteria for moving through the document by section. Application.Browser.Target = wdBrowseSection
'A mailmerge documents 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 ActiveDocument.Bookmarks("Section").Range.Copy
'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 "chemin de stockage des documents"
' definir le nom du fichier de sauveagrde pour chaque enregistrement nomFichier = ActiveDocument.Paragraphs(1).Range.Text """"""""""""""""""""""""" nomFichier = Left(nomFichier, (Len(nomFichier) - 1)) """"""""""""""""""""""""" ActiveDocument.Paragraphs(1).Range.Delete ActiveDocument.SaveAs FileName:=nomFichier ActiveDocument.Close savechanges:=wdDoNotSaveChanges ActiveDocument.Paragraphs(1).Range.Delete
Application.DisplayAlerts = False
' Move the selection to the next section in the document Application.Browser.Next Next i ActiveDocument.Close savechanges:=wdDoNotSaveChanges End Sub
On 23 oct, 21:55, Anacoluthe wrote:
Bonjour !
'sleg' nous a écrit ...
> les champs de fusion disparraissent.
Les 'champs de fusion' disparaissent tous à la fusion, c'est normal. Le problème est que certains 'champs de formulaire' disparaissent aussi
> la macro est dans le normal.dot et je la lance a aprtir de mon > document de fusion.
OK ça c'est bon. Vous devriez pouvoir terminer ce sujet concernant la découpe de la fusion en plusieurs fichiers. Pensez notamment à donner le nom complet, chemin compris, de chaque fichier. Je suis allé un peu vite moi-même en oubliant de vous dire d'élimin er le caractère saut de ligne en fin de paragraphe. Pensez à placer des espions dans votre code pour déboguer : vous auriez vite vu en quoi le nom de fichier n'est pas valide !
> en gros il y a une solutio na mon problemem ou pas ?
Il y a SUREMENT une solution à votre problème :-p Mais il n'est pas certain qu'elle passe par Word, son publipostage et ses formulaires.
D'ailleurs j'avoue ne pas comprendre tout votre problème. En généra l on utilise UN formulaire, éventuellement prérempli avec certaines données, puis avec CE formulaire on renseigne une base de données. Remarquez qu'avec Word conçu pour imprimer ledit formulaire, la récupération des données n'est jamais simple d'où l'obsolescence aujourd'hui des formulaires Word...
Bon courage
(merci d'ouvrir une autre discussion au besoin ; celle-ci s'épuise)
Anacoluthe « Pour tout problème complexe il existe une solution simple, claire et fausse. » - Henry Louis MENCKEN