Microsoft 365 Fermer l'instance Word (Suite macro vba)

  • Initiateur de la discussion Initiateur de la discussion Azuveus
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Azuveus

XLDnaute Nouveau
Bonjour la communauté,

Voila je me confronte a un problème depuis quelques jours.

Dans un fichier Excel, une macro me permet de récupérer des données de ce même fichier Excel et de les incrémenter dans un fichier Word (un Template) via des signets et de le sauvegarder en un fichier PDF pour ne pas écraser mon Template Word.

Concrètement ce que je demande a ma macro est de générer un PDF immédiatement sans afficher l'app Word.

Ma macro fonctionne bien, cependant lorsque je souhaite réutiliser la macro ultérieurement, un message apparait en m'indiquant que le fichier Word (mon Template) est déjà ouvert ce qui n'est pas le cas. (et d'en ouvrir l'ouvrir en lecteur seul), ce qui me pose un problème.

Pour palier a cela, je dois systématiquement redémarrer mon PC ce qui n'est vraiment pas idéal.

Ma question est donc la suivante : Pourriez vous m'indiquer ce que dois faire dans ma macro afin de fermer l'instance Word après la génération de mon PDF.

Voici la macro :
VB:
Sub CREATE_PDF_Click()

Dim Wordapp As Word.Application
Dim Worddoc As Word.Document

Set Wordapp = CreateObject("word.application")
Set Worddoc = Wordapp.Documents.Open("\\...\BACKLOG\PVI.doc")

Worddoc.Bookmarks("NOM_CLIENT").Range.Text = TextBox1.Value
Worddoc.Bookmarks("ADRESSE").Range.Text = TextBox2.Value
Worddoc.Bookmarks("VILLE").Range.Text = TextBox3.Value
Worddoc.Bookmarks("PAYS").Range.Text = TextBox4.Value
Worddoc.Bookmarks("NUM_CLIENT").Range.Text = TextBox5.Value
Worddoc.Bookmarks("NUM_CDE").Range.Text = TextBox12.Value
Worddoc.Bookmarks("SERVICE").Range.Text = TextBox6.Value
Worddoc.Bookmarks("TELEPHONE").Range.Text = TextBox7.Value
Worddoc.Bookmarks("CODE_POSTAL").Range.Text = TextBox8.Value
Worddoc.Bookmarks("CONTACT").Range.Text = TextBox9.Value
Worddoc.Bookmarks("EQUIPEMENT").Range.Text = TextBox10.Value
Worddoc.Bookmarks("NUM_SERIE").Range.Text = TextBox11.Value

Worddoc.ExportAsFixedFormat OutputFileName:= _
        "PVI" & ".pdf", ExportFormat:= _
        17, OpenAfterExport:=True, OptimizeFor:= _
        0, Range:=0, From:=1, To:=1, _
        Item:=0, IncludeDocProps:=True, KeepIRM:=True, _
        CreateBookmarks:=0, DocStructureTags:=True, _
        BitmapMissingFonts:=True, UseISO19005_1:=False

End Sub

Je vous remercie par avance pour votre précieuse aide.

Azuveus.
 
re
bonjour
ma fois tu créée deux object au départ la chose est évidente

VB:
Set Wordapp = CreateObject("word.application")
Set Worddoc = Wordapp.Documents.Open("\\...\BACKLOG\PVI.doc")

puis tu sauve le document en pdf
donc il y a de forte chance que tu ne veuille pas garder le word
donc tu n'a qu'a fermer l'application word comme tu le ferais avec excel
Code:
with wordapp
.displayalerts=false
.quit
end with
ton doc word restera comme à l'initial
 
Bonjour,

Je n'arrive toujours pas a faire disparaitre le pop-up
1630507156975.png


Voici mon code:
Pourriez vous me dire ou est le probleme svp?

VB:
Sub CREATE_PDF_Click()

Dim Wordapp As Word.Application
Dim Worddoc As Word.Document

Set Wordapp = CreateObject("word.application")
Set Worddoc = Wordapp.Documents.Open("\\...\BACKLOG\PVI.doc")

Worddoc.Bookmarks("NOM_CLIENT").Range.Text = TextBox1.Value
Worddoc.Bookmarks("ADRESSE").Range.Text = TextBox2.Value
Worddoc.Bookmarks("VILLE").Range.Text = TextBox3.Value
Worddoc.Bookmarks("PAYS").Range.Text = TextBox4.Value
Worddoc.Bookmarks("NUM_CLIENT").Range.Text = TextBox5.Value
Worddoc.Bookmarks("NUM_CDE").Range.Text = TextBox12.Value
Worddoc.Bookmarks("SERVICE").Range.Text = TextBox6.Value
Worddoc.Bookmarks("TELEPHONE").Range.Text = TextBox7.Value
Worddoc.Bookmarks("CODE_POSTAL").Range.Text = TextBox8.Value
Worddoc.Bookmarks("CONTACT").Range.Text = TextBox9.Value
Worddoc.Bookmarks("EQUIPEMENT").Range.Text = TextBox10.Value
Worddoc.Bookmarks("NUM_SERIE").Range.Text = TextBox11.Value

Worddoc.ExportAsFixedFormat OutputFileName:= _
        "PVI - " & TextBox1.Value & " - SO " & TextBox12.Value & " - " & TextBox10.Value & ".pdf", ExportFormat:= _
        17, OpenAfterExport:=True, OptimizeFor:= _
        0, Range:=0, From:=1, To:=1, _
        Item:=0, IncludeDocProps:=True, KeepIRM:=True, _
        CreateBookmarks:=0, DocStructureTags:=True, _
        BitmapMissingFonts:=True, UseISO19005_1:=False

With Wordapp
Wordapp.DisplayAlerts = False
Wordapp.Quit

End With

End Sub

Merci d'avance,

Azuveus,
 
le pdf devrait etre enregistré sur ton bureau
on aurait eu ton modèle de doc on aurait fait plus vite
VB:
Sub CREATE_PDF_Click()

    Dim Wordapp As Word.Application
    Dim Worddoc As Word.Document
    Dim cheminpdf$
    Set Wordapp = CreateObject("word.application")
    Set Worddoc = Wordapp.Documents.Open("\\...\BACKLOG\PVI.doc")
    cheminpdf = Environ("userprofile") & "\DeskTop\" & "PVI - " & TextBox1.Value & " - SO " & TextBox12.Value & " - " & TextBox10.Value & ".pdf"

    Worddoc.Bookmarks("NOM_CLIENT").Range.Text = TextBox1.Value
    Worddoc.Bookmarks("ADRESSE").Range.Text = TextBox2.Value
    Worddoc.Bookmarks("VILLE").Range.Text = TextBox3.Value
    Worddoc.Bookmarks("PAYS").Range.Text = TextBox4.Value
    Worddoc.Bookmarks("NUM_CLIENT").Range.Text = TextBox5.Value
    Worddoc.Bookmarks("NUM_CDE").Range.Text = TextBox12.Value
    Worddoc.Bookmarks("SERVICE").Range.Text = TextBox6.Value
    Worddoc.Bookmarks("TELEPHONE").Range.Text = TextBox7.Value
    Worddoc.Bookmarks("CODE_POSTAL").Range.Text = TextBox8.Value
    Worddoc.Bookmarks("CONTACT").Range.Text = TextBox9.Value
    Worddoc.Bookmarks("EQUIPEMENT").Range.Text = TextBox10.Value
    Worddoc.Bookmarks("NUM_SERIE").Range.Text = TextBox11.Value

    Worddoc.ExportAsFixedFormat OutputFileName:=cheminpdf, ExportFormat:=17, OpenAfterExport:=True, _
                                OptimizeFor:=0, Range:=0, From:=1, To:=1, _
                                Item:=0, IncludeDocProps:=True, KeepIRM:=True, _
                                CreateBookmarks:=0, DocStructureTags:=True, _
                                BitmapMissingFonts:=True, UseISO19005_1:=False

    Worddoc.Close False
    Set Worddoc = Nothing
    Wordapp.Quit
    Set Wordapp = Nothing

End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
405
Retour