Bonjour,
J'ai un petit problème qui me semble simple à résoudre mais je ne trouve pas la solution.
J'ai un fichier excel (test2.xlsm) qui lance un macro vba. Cette macro ouvre un autre workbook (model.xlsm) ou on effectue des calculs. Je souhaite à la fin convertir les feuilles (model.xlsm) en pdf. Mon souci c'est qu'il m'imprime les pages de l'autre workbook ( test2.xlsm)
Voila je vous lesse mon code, je pense que le problème est sur la ligne que j'ai indiqué en rouge, en espérant que quelqu’un pourra m'aider :
Merci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 Private Sub ToPdf(ledir) timestamp = Format(Now, "dd-mm-yyyy-hhnnssms") Sheets("Feuil1").Visible = False Sheets("BDCF").Visible = False Set pdfjob = CreateObject("PDFCreator.clsPDFCreator") NomPdf = "BDCF" & timestamp & ".pdf" With pdfjob If .cstart("/NoProcessingAtStartup") = False Then MsgBox "Can't initialize PDFCreator.", vbCritical + vbOKOnly, "PrtPDFCreator" Exit Sub End If .cOption("UseAutosave") = 1 .cOption("UseAutisaveDirectory") = 1 .cOption("AutosaveDirectory") = ledir .cOption("AutosaveFilename") = NomPdf .cOption("AutosaveFormat") = 0 .cClearCache End With ActiveWindow.View = xlPageBreakPreview ActiveSheet.VPageBreaks(1).DragOff Direction:=xlToRight, RegionIndex:=1 ActiveWindow.View = xlNormalView ThisWorkbook.PrintOut copies:=1, ActivePrinter:="PDFCreator" Do Until pdfjob.cCountOfPrintjobs = 1 DoEvents Loop pdfjob.cPrinterStop = False Do Until pdfjob.cCountOfPrintjobs = 0 DoEvents Loop With pdfjob .cDefaultprinter = DefaultPrinter .cClearCache .cClose End With Set pdfjob = Nothing Sheets("Feuil1").Visible = True Sheets("BDCF").Visible = True End Sub
Partager