VBA macro imprimer en PDF les onglets sans les nommer

Anna_2013

XLDnaute Junior
Bonjour,
Je souhaiterais imprimer les onglets de mon classeur en pdf sans avoir à notifier dans la macro que l'onglet s'appelle NOTE 1 ect...

J'ai récupéré cette macro et souhaiterais l'adapter.
Est ce que quelqu'un peut svp m'aider.

Merci

'Imprime le document en PDF
pdfjob.cPrinterStop = True
Sheets("page 1").PrintOut copies:=1, ActivePrinter:="PDFCreator"
Do Until pdfjob.cCountOfPrintjobs = 1 'attent que l'impression soit dans la file d'attente de pdf créator
DoEvents
Loop
Sheets("FISC2").PrintOut From:=1, to:=(Sheets("données pour calcul").Range("x14")), copies:=1, ActivePrinter:="PDFCreator"
Do Until pdfjob.cCountOfPrintjobs = 2 'attent que l'impression soit dans la file d'attente de pdf créator
DoEvents
Loop
If x18 > 0 Then
Sheets("fortune et titres").PrintOut From:=(x18), to:=(x18), ActivePrinter:="PDFCreator"
Do Until pdfjob.cCountOfPrintjobs = 3 'attent que l'impression soit dans la file d'attente de pdf créator
DoEvents
Loop
Else 'Si il n'y a pas d'état des titres ça fait ce qui suit, et ça place le compteur de la file d'attente à 3 au lieu de 4 (ce qui permet de continuer la macro)
If x16 = 4 Then
Sheets("FISC2").PrintOut From:=(x16), to:=(x16), copies:=1, ActivePrinter:="PDFCreator"
Do Until pdfjob.cCountOfPrintjobs = 3 'attent que l'impression soit dans la file d'attente de pdf créator
DoEvents
Loop
GoTo Suite::
End If
End If
If x16 = 4 Then
Sheets("FISC2").PrintOut From:=(x16), to:=(x16), copies:=1, ActivePrinter:="PDFCreator"
Do Until pdfjob.cCountOfPrintjobs = 4 'attent que l'impression soit dans la file d'attente de pdf créator
DoEvents
Loop
End If
Suite::
'Attend que le document soit entré dans la file d'impression
'pdfjob.cPrinterStop = False
'Combine all PDFs into a single file and stop the printer
With pdfjob
.cCombineAll
Do Until pdfjob.cCountOfPrintjobs = 1
DoEvents
Loop
.cPrinterStop = False
End With
'Attend que l'impression du document soit terminée
Do Until pdfjob.cCountOfPrintjobs = 0
DoEvents
Loop
pdfjob.cClose
MsgBox "Opération terminée"
'Set pdfjob = Nothing
End Sub
 

Papou-net

XLDnaute Barbatruc
Re : VBA macro imprimer en PDF les onglets sans les nommer

Bonjour Anna_2013,

Sans autre précision de ta part, tu peux utiliser une boucle avec test du nom de la feuille pour lancer l'impression.

Quelque chose de ce genre:

Code:
'Imprime le document en PDF
 pdfjob.cPrinterStop = True
For Each sh in Sheets
    If sh.Name Like "Note*" Then
     Sh.PrintOut copies:=1, ActivePrinter:="PDFCreator"
     Do Until pdfjob.cCountOfPrintjobs = 1 'attent que l'impression soit dans la file d'attente de pdf créator
        DoEvents
     Loop
   End If
Next
pdfjob.cClose
 MsgBox "Opération terminée"
 Set pdfjob = Nothing
End Sub
Ceci suppose que tu imprimes la totalité du contenu des feuilles et non des plages de cellules différentes pour chacune.

A +

Cordialement.
 

Anna_2013

XLDnaute Junior
Re : VBA macro imprimer en PDF les onglets sans les nommer

Je n'ai pas de message d'erreur. Developpeur ne reconnait pas le texte comme un programme macro

'Imprime le document en PDF
pdfjob.cPrinterStop = True
For Each sh in Sheets
If sh.Name Like "Note*" Then
Sh.PrintOut copies:=1, ActivePrinter:="PDFCreator"
Do Until pdfjob.cCountOfPrintjobs = 1 'attent que l'impression soit dans la file d'attente de pdf créator
DoEvents
Loop
End If
Next
pdfjob.cClose
MsgBox "Opération terminée"
Set pdfjob = Nothing
End Sub
 

Discussions similaires