Bonjour,

J'ai un problème dans mon code que je n'arrive pas à résoudre! (je ne suis pas un pro d'où le code certainement pas trop propre )
Je voudrais imprimer les 4 premières pages d'un enregistrement de mon fichier word mais le script reste bloqué sur la ligne "wordDoc.PrintOut...", le message d'erreur est :
Erreur d'execution '5148'
Le nombre doit être compris entre -32765 et 32767
Quelqu'un aurait il une idée d'où vient le problème (param_quantite = 1 ou 2)

D'avance merci!

Code vb : 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
Private Sub ouvrir_word()
    Dim NomBase As String
    Dim Nom_word As String
    Dim wordApp As Object
    Dim wordDoc As Object
     Dim fichier_word As String
    fichier_word = ThisWorkbook.Sheets("Liste_deroulante").Range("G1").Value
 
    NomBase = ThisWorkbook.Path & "\" & ThisWorkbook.Name
    Nom_word = ThisWorkbook.Path & "\" & fichier_word
 
    Application.ScreenUpdating = False
 
    Set wordApp = CreateObject("Word.Application")
    wordApp.Visible = True
    wordApp.WordBasic.FilePrintSetup Printer:=imprimante, _
      DoNotSetAsSysDefault:=1
    'Ouverture du document principal Word
       Set wordDoc = wordApp.Documents.Open(Nom_word)
 
    'fonctionnalité de publipostage pour le document spécifié
    With wordDoc.MailMerge
        'Ouvre la base de données
        .OpenDataSource Name:=NomBase, _
            Connection:="Driver={Microsoft Excel Driver (*.xls)};" & _
            "DBQ=" & NomBase & "; ReadOnly=True;", _
            SQLStatement:="SELECT * FROM [BDD_entretien$]"
            '.DataSource.ActiveRecord = i - 1
            .DataSource.firstRecord = i - 1
            .DataSource.lastRecord = i - 1
            .ViewMailMergeFieldCodes = wdToggle
 
            wordDoc.PrintOut , Background:=True, Copies:=param_quantite, Range:=wdPrintFromTo, from:=1, to:=4
 
    End With
 
    'Fermeture du document Word
    On Error GoTo dejaferme
    wordApp.Documents.Close False
    On Error GoTo dejaferme
    wordApp.Quit
dejaferme:
End Sub