Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

pour les macroteurs

3 réponses
Avatar
AB
Hello,
Je souhaite enregistrer des fichiers au format pdf.
Très facile et très rapide avec Word2007.
Mais comme je dois en avoir à peu près 500, il me faut une macro.
La batch macro du cher Anacoluthe marche avec Word 2007, et devrait me
faciliter la vie.
Pour ceux qui ne la connaîtraient pas, cette précieuse batch macro permet
d'appliquer une macro à un ensemble de fichiers.
La macro que j'applique est la suivante :

Sub conversion_pdf()
'
' conversion_pdf Macro
'
'
ActiveDocument.ExportAsFixedFormat OutputFileName:= _
"C:\Documents\Cours\Transport\F02001.pdf" _
, ExportFormat:=wdExportFormatPDF, OpenAfterExport:=True,
OptimizeFor:= _
wdExportOptimizeForOnScreen, Range:=wdExportAllDocument, From:=1,
To:=1, _
Item:=wdExportDocumentContent, IncludeDocProps:=True, KeepIRM:=True,
_
CreateBookmarks:=wdExportCreateNoBookmarks, DocStructureTags:=True,
_
BitmapMissingFonts:=True, UseISO19005_1:=False
End Sub

Ma question : comment faire pour que le fichier résultant soit sauvegardé au
format pdf avec son nom, et non celui du fichier qui était ouvert quand j'ai
enregistré la macro (ici, F02001) ?
Une idée ?
AB

3 réponses

Avatar
Circé
Bonsoir André,

Faut récupérer le nom du fichier en cours sans l'extension :

Sub pdf()

Dim nom
nom = ActiveDocument.Name
Pos_ext = InStrRev(nom, ".")
nom = Left(nom, Pos_ext - 1)


ActiveDocument.ExportAsFixedFormat OutputFileName:= _
""C:DocumentsCoursTransport" & nom & ".pdf" _
, ExportFormat:=wdExportFormatPDF, OpenAfterExport:=True,
OptimizeFor:= _
wdExportOptimizeForOnScreen, Range:=wdExportAllDocument,
From:=1, To:=1, _
Item:=wdExportDocumentContent, IncludeDocProps:=True,
KeepIRM:=True, _
CreateBookmarks:=wdExportCreateNoBookmarks,
DocStructureTags:=True, _
BitmapMissingFonts:=True, UseISO19005_1:úlse
End Sub

Circé
http://faqword.com

AB a couché sur son écran :
Hello,
Je souhaite enregistrer des fichiers au format pdf.
Très facile et très rapide avec Word2007.
Mais comme je dois en avoir à peu près 500, il me faut une macro.
La batch macro du cher Anacoluthe marche avec Word 2007, et devrait me
faciliter la vie.
Pour ceux qui ne la connaîtraient pas, cette précieuse batch macro permet
d'appliquer une macro à un ensemble de fichiers.
La macro que j'applique est la suivante :

Sub conversion_pdf()
'
' conversion_pdf Macro
'
'
ActiveDocument.ExportAsFixedFormat OutputFileName:= _
"C:DocumentsCoursTransportF02001.pdf" _
, ExportFormat:=wdExportFormatPDF, OpenAfterExport:=True,
OptimizeFor:= _
wdExportOptimizeForOnScreen, Range:=wdExportAllDocument, From:=1,
To:=1, _
Item:=wdExportDocumentContent, IncludeDocProps:=True, KeepIRM:=True,
_
CreateBookmarks:=wdExportCreateNoBookmarks, DocStructureTags:=True, _
BitmapMissingFonts:=True, UseISO19005_1:úlse
End Sub

Ma question : comment faire pour que le fichier résultant soit sauvegardé au
format pdf avec son nom, et non celui du fichier qui était ouvert quand j'ai
enregistré la macro (ici, F02001) ?
Une idée ?
AB


Avatar
AB
Hello Marina,
Mais c'est que tu es devenue une "as" (y'a pas de féminin, là ?) des macros
!!!
Ca marche parfaitement, à condition d'ôter le guillemet en trop avant C:
Mille mercis !
André

"Circé" a écrit dans le message de
news:
Bonsoir André,

Faut récupérer le nom du fichier en cours sans l'extension :

Sub pdf()

Dim nom
nom = ActiveDocument.Name
Pos_ext = InStrRev(nom, ".")
nom = Left(nom, Pos_ext - 1)


ActiveDocument.ExportAsFixedFormat OutputFileName:= _
""C:DocumentsCoursTransport" & nom & ".pdf" _
, ExportFormat:=wdExportFormatPDF, OpenAfterExport:=True,
OptimizeFor:= _
wdExportOptimizeForOnScreen, Range:=wdExportAllDocument, From:=1,
To:=1, _
Item:=wdExportDocumentContent, IncludeDocProps:=True,
KeepIRM:=True, _
CreateBookmarks:=wdExportCreateNoBookmarks, DocStructureTags:=True,
_
BitmapMissingFonts:=True, UseISO19005_1:úlse
End Sub

Circé
http://faqword.com

AB a couché sur son écran :
Hello,
Je souhaite enregistrer des fichiers au format pdf.
Très facile et très rapide avec Word2007.
Mais comme je dois en avoir à peu près 500, il me faut une macro.
La batch macro du cher Anacoluthe marche avec Word 2007, et devrait me
faciliter la vie.
Pour ceux qui ne la connaîtraient pas, cette précieuse batch macro permet
d'appliquer une macro à un ensemble de fichiers.
La macro que j'applique est la suivante :

Sub conversion_pdf()
'
' conversion_pdf Macro
'
'
ActiveDocument.ExportAsFixedFormat OutputFileName:= _
"C:DocumentsCoursTransportF02001.pdf" _
, ExportFormat:=wdExportFormatPDF, OpenAfterExport:=True,
OptimizeFor:= _
wdExportOptimizeForOnScreen, Range:=wdExportAllDocument, From:=1,
To:=1, _
Item:=wdExportDocumentContent, IncludeDocProps:=True,
KeepIRM:=True, _
CreateBookmarks:=wdExportCreateNoBookmarks,
DocStructureTags:=True, _
BitmapMissingFonts:=True, UseISO19005_1:úlse
End Sub

Ma question : comment faire pour que le fichier résultant soit sauvegardé
au format pdf avec son nom, et non celui du fichier qui était ouvert
quand j'ai enregistré la macro (ici, F02001) ?
Une idée ?
AB






Avatar
Circé
AB avait soumis l'idée :
Hello Marina,
Mais c'est que tu es devenue une "as" (y'a pas de féminin, là ?) des macros
!!!



C'est que j'ai eu de bon maîtres avec anacoluthe et Geo ! :D
Ca marche parfaitement, à condition d'ôter le guillemet en trop avant C:



Ouppss !!! Mille excuses pour le guillemet doublé ! ;)



Mille mercis !
André

"Circé" a écrit dans le message de
news:
Bonsoir André,

Faut récupérer le nom du fichier en cours sans l'extension :

Sub pdf()

Dim nom
nom = ActiveDocument.Name
Pos_ext = InStrRev(nom, ".")
nom = Left(nom, Pos_ext - 1)


ActiveDocument.ExportAsFixedFormat OutputFileName:= _
""C:DocumentsCoursTransport" & nom & ".pdf" _
, ExportFormat:=wdExportFormatPDF, OpenAfterExport:=True,
OptimizeFor:= _
wdExportOptimizeForOnScreen, Range:=wdExportAllDocument, From:=1,
To:=1, _
Item:=wdExportDocumentContent, IncludeDocProps:=True, KeepIRM:=True,
_
CreateBookmarks:=wdExportCreateNoBookmarks, DocStructureTags:=True,
_
BitmapMissingFonts:=True, UseISO19005_1:úlse
End Sub

Circé
http://faqword.com

AB a couché sur son écran :
Hello,
Je souhaite enregistrer des fichiers au format pdf.
Très facile et très rapide avec Word2007.
Mais comme je dois en avoir à peu près 500, il me faut une macro.
La batch macro du cher Anacoluthe marche avec Word 2007, et devrait me
faciliter la vie.
Pour ceux qui ne la connaîtraient pas, cette précieuse batch macro permet
d'appliquer une macro à un ensemble de fichiers.
La macro que j'applique est la suivante :

Sub conversion_pdf()
'
' conversion_pdf Macro
'
'
ActiveDocument.ExportAsFixedFormat OutputFileName:= _
"C:DocumentsCoursTransportF02001.pdf" _
, ExportFormat:=wdExportFormatPDF, OpenAfterExport:=True,
OptimizeFor:= _
wdExportOptimizeForOnScreen, Range:=wdExportAllDocument, From:=1,
To:=1, _
Item:=wdExportDocumentContent, IncludeDocProps:=True,
KeepIRM:=True, _
CreateBookmarks:=wdExportCreateNoBookmarks,
DocStructureTags:=True, _
BitmapMissingFonts:=True, UseISO19005_1:úlse
End Sub

Ma question : comment faire pour que le fichier résultant soit sauvegardé
au format pdf avec son nom, et non celui du fichier qui était ouvert quand
j'ai enregistré la macro (ici, F02001) ?
Une idée ?
AB