Table of contents
TOC
Réduire la table des matières
Développer la table des matières

Report.PrtDevMode, propriété (Access)Report.PrtDevMode Property (Access)

office 365 dev account|Dernière mise à jour: 03/04/2018
|
2 Collaborateurs

Vous pouvez utiliser la propriété ModePérImp (PrtDevMode) pour définir ou renvoyer des informations relatives au mode du périphérique d’impression spécifié pour un formulaire ou un état dans la boîte de dialogue Imprimer .You can use the PrtDevMode property to set or return printing device mode information specified for a form or report in the Print dialog box.En lecture/écriture de type Variant.Read/write Variant.

SyntaxeSyntax

expression.expression.PrtDevModePrtDevMode

expression Variable qui représente un objet Report .expression A variable that represents a Report object.

RemarquesRemarks

Il est fortement recommandé de consulter le Kit de développement de logiciel Win32 pour des informations complètes sur les propriétés PrtDevMode, PrtDevNameset PrtMip .It is strongly recommended that you consult the Win32 Software Development Kit for complete documentation on the PrtDevMode, PrtDevNames, and PrtMip properties.

Le paramètre de la propriété ModePérImp (PrtDevMode) est une structure de 94 octets qui reflète la structure DEVMODE définie dans le Kit de développement de logiciel Win32.The PrtDevMode property setting is a 94-byte structure that mirrors the DEVMODE structure defined in the Win32 Software Development Kit.Pour plus d'informations sur les membres de la propriété PrtDevMode, consultez le Kit de développement de logiciel Win32.For complete information on the PrtDevMode property members, consult the Win32 Software Development Kit.

La propriété ModePérImp (PrtDevMode) utilise les membres suivants.The PrtDevMode property uses the following members.

MembreMemberDescriptionDescription
Nom de périphériqueDeviceNameUne chaîne comportant au maximum 32 octets qui spécifie le nom du périphérique le pilote prend en charge ? par exemple, « HP LaserJet IIISi » si l'imprimante spécifiée n'est le Hewlett-Packard LaserJet IIISi. Chaque pilote d'imprimante correspond une chaîne unique.A string with a maximum of 32 bytes that specifies the name of the device the driver supports ? for example, "HP LaserJet IIISi" if the Hewlett-Packard LaserJet IIISi is the specified printer. Each printer driver has a unique string.
SpecVersionSpecVersionUn entier qui spécifie le numéro de version de la structure DEVMODE dans le Kit de développement de logiciel Win32.An Integer that specifies the version number of the DEVMODE structure in the Win32 Software Development Kit.
DriverVersionDriverVersionUn entier qui spécifie le numéro de version du pilote imprimante affecté par son développeur.An Integer that specifies the printer driver version number assigned by the printer driver developer.
TailleSizeUn entier qui spécifie la taille, en octets, de la structure DEVMODE.An Integer that specifies the size, in bytes, of the DEVMODE structure.(Cette valeur ne comprend pas le membre facultatif dmDriverData pour les données spécifiques au périphérique qui peuvent suivre cette structure.) Si une application utilise uniquement la partie indépendante du pilote des données, vous pouvez utiliser ce membre pour déterminer la longueur de cette structure sans avoir à tenir compte des différentes versions.(This value doesn't include the optional dmDriverData member for device-specific data, which can follow this structure.) If an application manipulates only the driver-independent portion of the data, you can use this member to find out the length of this structure without having to account for different versions.
DriverExtraDriverExtraUn entier qui spécifie la taille, en octets, du membre facultatif dmDriverData pour les données spécifiques au périphérique qui peuvent suivre cette structure.An Integer that specifies the size, in bytes, of the optional dmDriverData member for device-specific data, which can follow this structure.Si l'application n'utilise pas d'informations spécifiques au périphérique, attribuez la valeur 0 à ce membre.If an application doesn't use device-specific information, you set this member to 0.
Fields (Champs)FieldsUne valeur de type Long qui indique les membres restants de la structure DEVMODE ont été initialisés.A Long value that specifies which of the remaining members in the DEVMODE structure have been initialized.
OrientationOrientationUn entier qui spécifie l’orientation du papier.An Integer that specifies the orientation of the paper.Il peut être 1 (portrait) ou 2 (paysage).It can be either 1 (portrait) or 2 (landscape).
PaperSizePaperSizeUn entier qui spécifie la taille du papier à imprimer.An Integer that specifies the size of the paper to print on.Si vous définissez ce membre sur 0 ou 256, la longueur et la largeur du papier sont spécifiées en respectivement par les membres PaperLength et PaperWidth.If you set this member to 0 or 256, the length and width of the paper are specified by the PaperLength and PaperWidth members, respectively.Dans le cas contraire, vous pouvez définir le membre PaperSize une valeur prédéfinie.Otherwise, you can set the PaperSize member to a predefined value.Pour les valeurs disponibles, consultez lesvaleurs du membre PaperSize .For available values, see thePaperSize member values.
PaperLengthPaperLengthUn entier qui spécifie la longueur du papier en 1/10è de millimètre.An Integer that specifies the paper length in units of 1/10 of a millimeter.Ce membre annule la longueur définie par le membre PaperSize (TaillePapier) pour les tailles de papier personnalisées ou pour les périphériques tels que les imprimantes matricielles, qui acceptent différentes tailles de papier.This member overrides the paper length specified by the PaperSize member for custom paper sizes or for devices such as dot-matrix printers that can print on a variety of paper sizes.
PaperWidthPaperWidthUn entier qui spécifie la largeur du papier en 1/10è de millimètre.An Integer that specifies the paper width in units of 1/10 of a millimeter.Ce membre annule la largeur spécifiée par le membre PaperSize (TaillePapier).This member overrides the paper width specified by the PaperSize member.
Scale (Échelle)ScaleUn entier qui spécifie le facteur par lequel la sortie imprimée est redimensionnée.An Integer that specifies the factor by which the printed output will be scaled.La taille de page apparente est mise à l’échelle de la taille de page physique par un facteur d' échelle /100.The apparent page size is scaled from the physical page size by a factor of scale /100.Par exemple, une feuille de papier mesurant 210 x 297 millimètres (format A4) à l'échelle 50 contient autant de données qu'une page au format 420 x 594 millimètres parce que la taille du texte et des graphismes imprimés est réduite de moitié par rapport à celle de l'original affiché à l'écran.For example, a piece of paper measuring 8.5 by 11 inches (letter-size) with a Scale value of 50 would contain as much data as a page measuring 17 by 22 inches because the output text and graphics would be half their original height and width.
CopiesCopiesUn entier qui spécifie le nombre de copies imprimées si le périphérique d’impression prend en charge les copies de plusieurs pages.An Integer that specifies the number of copies printed if the printing device supports multiple-page copies.
DefaultSourceDefaultSourceUn entier qui spécifie l’emplacement par défaut à partir de laquelle le papier est chargé.An Integer that specifies the default bin from which the paper is fed.Pour les valeurs disponibles, consultez lesvaleurs du membre DefaultSource .For available values, see theDefaultSource member values.
PrintQualityPrintQualityUn entier qui spécifie la résolution de l’imprimante.An Integer that specifies the printer resolution.Les valeurs sont ?4 (haute), ?3 (moyen), ?2 (faible) et ?1 (brouillon).The values are ?4 (high), ?3 (medium), ?2 (low), and ?1 (draft).
Color (Couleur)ColorUn entier.An Integer.Pour une imprimante couleur, spécifie si la sortie est imprimée en couleur.For a color printer, specifies whether the output is printed in color.Les valeurs possibles sont 1 (couleur) ou 2 (monochrome).The values are 1 (color) and 2 (monochrome).
Duplex (Recto-verso)DuplexUn entier.An Integer.Spécifie si les pages sont imprimées recto verso, dans le cas où votre imprimante prend en charge cette fonction.For a printer capable of duplex printing, specifies whether the output is printed on both sides of the paper.Les valeurs possibles sont 1 (simplex), 2 (horizontale) et 3 (verticale).The values are 1 (simplex), 2 (horizontal), and 3 (vertical).
YResolution (RésolutionY)YResolutionUn entier qui spécifie la résolution y de l’imprimante en points par pouce (PPP).An Integer that specifies the y-resolution of the printer in dots per inch (dpi).Si l'imprimante initialise ce membre, le membre PrintQuality (QualitéImpression) spécifie la résolution en X de l'imprimante en dpi.If the printer initializes this member, the PrintQuality member specifies the x-resolution of the printer in dpi.
TTOption (OptionTT)TTOptionUn entier qui spécifie le mode d’impression des polices TrueType.An Integer that specifies how TrueType fonts will be printed.Pour les valeurs disponibles, consultez lesvaleurs du membre TTOption (OptionTT) .For available values, see theTTOption member values.
Collate (Assembler)CollateUn entier qui spécifie si l’assemblage doit être utilisé lors de l’impression de plusieurs copies.An Integer that specifies whether collation should be used when printing multiple copies.L'utilisation de copies non assemblées permet une impression plus rapide et plus efficace puisque les données ne sont envoyées à l'imprimante qu'une seule fois.Using uncollated copies provides faster, more efficient output, since the data is sent to the printer just once.
FormNameFormNameChaîne contenant jusqu'à 16 caractères qui spécifie le format de papier à utiliser ; par exemple, "Lettre" ou "Legal".A string with a maximum of 16 characters that specifies the size of paper to use; for example, "Letter" or "Legal".
PadPadUne valeur de type Long qui est utilisée pour compléter les espaces, caractères ou valeurs pour les versions futures.A Long value that is used to pad out spaces, characters, or values for future versions.
BitsBitsUne valeur de type Long qui spécifie en bits par pixel la résolution couleur du périphérique d’affichage.A Long value that specifies in bits per pixel the color resolution of the display device.
PWPWUne valeur de type Long qui spécifie la largeur, en pixels, de la surface visible du périphérique (écran ou imprimante).A Long value that specifies the width, in pixels, of the visible device surface (screen or printer).
PHPHUne valeur de type Long qui spécifie la hauteur, en pixels, de la surface visible du périphérique (écran ou imprimante).A Long value that specifies the height, in pixels, of the visible device surface (screen or printer).
DFIDFIUne valeur de type Long qui spécifie le mode d’affichage du périphérique.A Long value that specifies the device's display mode.
DFRDFRUne valeur de type Long qui spécifie la fréquence, en hertz (cycles par seconde), du périphérique d’affichage dans un mode particulier.A Long value that specifies the frequency, in hertz (cycles per second), of the display device in a particular mode.

Cette propriété est accessible en lecture-écriture en mode Création et en lecture seule dans les autres modes.This property setting is read/write in Design view and read-only in other views.

Les pilotes d'imprimante peuvent ajouter des données spécifiques au périphérique à la suite des 94 octets de la structure DEVMODE. Il est donc essentiel que les données relatives à DEVMODE ne dépassent pas 94 octets.Printer drivers can add device-specific data immediately following the 94 bytes of the DEVMODE structure. For this reason, it is important that the DEVMODE data outlined above not exceed 94 bytes.

Seuls les pilotes d’imprimante qui exportent la fonction ExtDeviceMode utilisent la structure DEVMODE.Only printer drivers that export the ExtDeviceMode function use the DEVMODE structure.

Une application peut extraire les formats de papier et les noms pris en charge par une imprimante en utilisant les valeurs DC_PAPERS, DC_PAPERSIZE et DC_PAPERNAMES pour invoquer la fonction DeviceCapabilities .An application can retrieve the paper sizes and names supported by a printer by using the DC_PAPERS, DC_PAPERSIZE, and DC_PAPERNAMES values to call the DeviceCapabilities function.

Avant de définir la valeur du membre TTOption, les applications doivent savoir comment un pilote d’imprimante utilise les polices TrueType en utilisant la valeur DC_TRUETYPE pour invoquer la fonction DeviceCapabilities .Before setting the value of the TTOption member, applications should find out how a printer driver can use TrueType fonts by using the DC_TRUETYPE value to call the DeviceCapabilities function.

ExempleExample

L’exemple suivant utilise la propriété ModePérImp (PrtDevMode) pour vérifier la taille de page définie par l’utilisateur pour un état :The following example uses the PrtDevMode property to check the user-defined page size for a report:

Private Type str_DEVMODE 
 RGB As String * 94 
End Type 

Private Type type_DEVMODE 
 strDeviceName As String * 32 
 intSpecVersion As Integer 
 intDriverVersion As Integer 
 intSize As Integer 
 intDriverExtra As Integer 
 lngFields As Long 
 intOrientation As Integer 
 intPaperSize As Integer 
 intPaperLength As Integer 
 intPaperWidth As Integer 
 intScale As Integer 
 intCopies As Integer 
 intDefaultSource As Integer 
 intPrintQuality As Integer 
 intColor As Integer 
 intDuplex As Integer 
 intResolution As Integer 
 intTTOption As Integer 
 intCollate As Integer 
 strFormName As String * 32 
 lngPad As Long 
 lngBits As Long 
 lngPW As Long 
 lngPH As Long 
 lngDFI As Long 
 lngDFr As Long 
End Type 

Public Sub CheckCustomPage(ByVal rptName As String) 

 Dim DevString As str_DEVMODE 
 Dim DM As type_DEVMODE 
 Dim strDevModeExtra As String 
 Dim rpt As Report 
 Dim intResponse As Integer 

 ' Opens report in Design view. 
 DoCmd.OpenReport rptName, acDesign 
 Set rpt = Reports(rptName) 

 If Not IsNull(rpt.PrtDevMode) Then 
 strDevModeExtra = rpt.PrtDevMode 

 ' Gets current DEVMODE structure. 
 DevString.RGB = strDevModeExtra 
 LSet DM = DevString 
 If DM.intPaperSize = 256 Then 

 ' Display user-defined size. 
 intResponse = MsgBox("The current custom page size is " &; _ 
 DM.intPaperWidth / 254 &; " inches wide by " &; _ 
 DM.intPaperLength / 254 &; " inches long. Do you want " &; _ 
 "to change the settings?", vbYesNo + vbQuestion) 
 Else 
 ' Currently not user-defined. 
 intResponse = MsgBox("The report does not have a custom page size. " &; _ 
 "Do you want to define one?", vbYesNo + vbQuestion) 
 End If 

 If intResponse = vbYes Then 
 ' User wants to change settings. Initialize fields. 
 DM.lngFields = DM.lngFields Or DM.intPaperSize Or _ 
 DM.intPaperLength Or DM.intPaperWidth 

 ' Set custom page. 
 DM.intPaperSize = 256 

 ' Prompt for length and width. 
 DM.intPaperLength = InputBox("Please enter page length in inches.") * 254 
 DM.intPaperWidth = InputBox("Please enter page width in inches.") * 254 

 ' Update property. 
 LSet DevString = DM 
 Mid(strDevModeExtra, 1, 94) = DevString.RGB 
 rpt.PrtDevMode = strDevModeExtra 
 End If 
 End If 

 Set rpt = Nothing 

End Sub

L'exemple suivant explique comment modifier l'orientation de l'état. Cet exemple passe de l'orientation en portrait à celle en paysage et inversement en fonction de l'orientation en cours de l'état.The following example shows how to change the orientation of the report. This example will switch the orientation from portrait to landscape or landscape to portrait depending on the report's current orientation.

Public Sub SwitchOrient(ByVal strName As String) 

 Const DM_PORTRAIT = 1 
 Const DM_LANDSCAPE = 2 
 Dim DevString As str_DEVMODE 
 Dim DM As type_DEVMODE 
 Dim strDevModeExtra As String 
 Dim rpt As Report 

 ' Opens report in Design view. 
 DoCmd.OpenReport strName, acDesign 
 Set rpt = Reports(strName) 

 If Not IsNull(rpt.PrtDevMode) Then 
 strDevModeExtra = rpt.PrtDevMode 
 DevString.RGB = strDevModeExtra 
 LSet DM = DevString 
 DM.lngFields = DM.lngFields Or DM.intOrientation 

 ' Initialize fields. 
 If DM.intOrientation = DM_PORTRAIT Then 
 DM.intOrientation = DM_LANDSCAPE 
 Else 
 DM.intOrientation = DM_PORTRAIT 
 End If 

 ' Update property. 
 LSet DevString = DM 
 Mid(strDevModeExtra, 1, 94) = DevString.RGB 
 rpt.PrtDevMode = strDevModeExtra 
 End If 

 Set rpt = Nothing 

End Sub

Voir aussiSee also

ConceptsConcepts

Objet ReportReport Object

© 2018 Microsoft