bonjour,

quelqu'un pourrait m'expliquer comment on créer un type dans VBA? En effet je suis souvent confronter à un message d'erreur qui dit :
Erreur de compilation : Type défini par l'utilisateur non défini
Pour le coup ce que je voudrais définir c'est: " PDFCreator.clsPDFCreator " pour faire marcher ce programme:
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
Sub Tst_PdfCreator()
Dim JobPDF As Object
Dim sNomPDF As String
Dim sCheminPDF As String
 
    If IsEmpty(ActiveSheet.UsedRange) Then Exit Sub
    sNomPDF = "Essai.pdf"
    sCheminPDF = ThisWorkbook.Path & Application.PathSeparator
 
    Set JobPDF = CreateObject("PDFCreator.clsPDFCreator")
 
    With JobPDF
        If .cStart("/NoProcessingAtStartup") = False Then
            MsgBox "Initialisation de PDFCreator impossible", vbCritical + vbOKOnly, "PDFCreator"
            Exit Sub
        End If
        .cOption("UseAutosave") = 1
        .cOption("UseAutosaveDirectory") = 1
        .cOption("AutosaveDirectory") = sCheminPDF
        .cOption("AutosaveFilename") = sNomPDF
        .cOption("AutosaveFormat") = 0
        .cClearCache
    End With
 
    ActiveSheet.PrintOut copies:=1, ActivePrinter:="PDFCreator"
 
    Do Until JobPDF.cCountOfPrintjobs = 1
        DoEvents
    Loop
    JobPDF.cPrinterStop = False
 
    Do Until JobPDF.cCountOfPrintjobs = 0
        DoEvents
    Loop
 
    JobPDF.cClose
    Set JobPDF = Nothing
 
End Sub
Quand j'avais essayé de faire publipostage, j'ai eu le même pb pour trouver le type document word, j'ai été obligé de partir d'une macro déjà existante. Mais cette fois, j'ai pas de macro toute faite à partir de laquelle repartir.

Je pense que pour faire ca il faut que je coche quelque chose dans Outils,Référence. Mais je sais pas quoi cocher pour avoir PDFCreator.clsPDFCreator

Quelqu'un sait?