Imprime tout ou des parties du document spécifié
#include <Word.au3>
_Word_DocPrint ( $oDoc [, $bBackground = False [, $iCopies = 1 [, $iOrientation = -1 [, $bCollate = True [, $sPrinter = "" [, $iRange = $WdPrintAllDocument [, $vFrom = 0 [, $vTo = 0 [, $sPages = "" [, $iPageType = $WdPrintAllPages [, $iItem = $WdPrintDocumentContent]]]]]]]]]]] )
$oDoc | Objet document Word |
$bBackground | [optionnel] True permet au script de continuer alors que le document s'imprime (par défaut = False) |
$iCopies | [optionnel] Le nombre de copies à imprimer (valeur par défaut = 1) |
$iOrientation | [optionnel] Définit l'orientation de la page: -1 - Utilise l'orientation du document actuel (par défaut) 0 - Portrait ($WdOrientPortrait de l'énumération WdOrientation) 1 - Paysage ($WdOrientLandscape de l'énumération WdOrientation) |
$bCollate | [optionnel] True imprime toutes les pages du document avant d'imprimer la copie suivante (par défaut = True) |
$sPrinter | [optionnel] Définit le nom de l'imprimante (par défaut = "" = imprimante active) |
$iRange | [optionnel] Spécifie la plage des pages à imprimer. Peut prendre toute valeur de l'énumération WdPrintOutRange. (par défaut = $WdPrintAllDocument = imprime la totalité du document) |
$vFrom | [optionnel] Le numéro de la page de départ (integer) lorsque $iRange est défini sur $WdPrintFromTo |
$vTo | [optionnel] Le numéro de page de fin (integer) lorsque $iRange est défini sur $WdPrintFromTo |
$sPages | [optionnel] Les numéros de page et les plages de pages à imprimer, séparés par des virgules quand $iRange est défini à 4. Par exemple, "2,6-10" imprime la page 2 et les pages 6 à 10 (par défaut = "") |
$iPageType | [optionnel] Le type de pages à imprimer. Peut prendre toute valeur de l'énumération WdPrintOutPages (par défaut = $WdPrintAllPages = imprime toutes les pages) |
$iItem | [optionnel] L'élément à imprimer. Peut prendre toute valeur de l'énumération WdPrintOutItem (par défaut = $WdPrintDocumentContent = contenu du document) |
Succès: | Retourne 1. |
Échec: | Retourne 0 et définit @error <> 0. |
@error: | 1 - $oDoc n'est pas un objet 2 - Erreur sur le paramètre orientation de la page. @extended contient le code erreur COM 3 - Erreur sur le paramètre $sPrinter de l'imprimante active 4 - Une erreur est apparue lors de l'impression du fichier. @extended contient le code d'erreur COM |
En activant $bBackground le script ne se met pas en pause jusqu'à ce que le document ait terminé l'impression, mais seulement
jusqu'à ce que Microsoft Word ait terminé l'envoi du document à l'imprimante.
Si vous spécifiez une imprimante, notez que le \\serveurname\printer semble être sensible à la casse.
#include <MsgBoxConstants.au3> #include <Word.au3> ; Crée un objet application Local $oWord = _Word_Create() If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Word UDF: _Word_DocPrint Example", _ "Error creating a new Word application object." & @CRLF & "@error = " & @error & ", @extended = " & @extended) ; Ouvre le document test Local $oDoc = _Word_DocOpen($oWord, @ScriptDir & "\Extras\Test.doc", Default, Default, True) If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Word UDF: _Word_DocPrint Example", _ "Error opening '.\Extras\Test.doc'." & @CRLF & "@error = " & @error & ", @extended = " & @extended) ; ; Imprime le document complet avec les valeurs par défaut ; Local $sActivePrinter = $oDoc.Application.ActivePrinter MsgBox($MB_SYSTEMMODAL, "", "The name of the active printer is: " & $sActivePrinter) _Word_DocPrint($oDoc) If @error Then Exit MsgBox($MB_SYSTEMMODAL, "Word UDF: _Word_DocPrint Example", _ "Error printing the document." & @CRLF & "@error = " & @error & ", @extended = " & @extended) MsgBox($MB_SYSTEMMODAL, "Word UDF: _Word_DocPrint Example", "The document has successfully been printed to: " & _ $sActivePrinter)