Deux questions dans une seule et même journée......
J'ai vu dans le module d'aide que la méthode PrintForm puise dans le panneau
de config. pour les paramètres d'impression par défaut. Mais par VBA, y
a-t-il moyen de spécifier des intrants (exemples: imprimante autre que celle
par défaut, impression en Landscape, en Letter8.5X11) comme c'est possible
lors d'un PrintOut d'une région sélectionnée dans la feuille active.
Avec l'éditeur de macros, je tente de récupérer le code racollé à une
impression d'une SelectedRegion pour la méthode de PrintForm mais sans succès.
Mission impossible ou mauvaise manière de procéder ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
michdenis
Bonjour Stéphane,
Pour imprimer un formulaire, la méthode Userform1.print ... ne laisse pas beaucoup de paramètres à définir.
Voici une procédure de Michel Perron sur le sujet :
'----------------------------------------- Impression en mode paysage par classeur masqué: 'Déclaration des API dans le haut du module Private Declare Function OpenClipboard& Lib "user32" (ByVal hwnd&) Private Declare Function EmptyClipboard& Lib "user32" () Private Declare Function CloseClipboard& Lib "user32" () Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte _ , ByVal bScan As Byte, ByVal dwFlags&, ByVal dwExtraInfo&)
Private Sub CommandButton1_Click() ' Impression écran Me.Repaint OpenClipboard 0& EmptyClipboard keybd_event &H2C, 0, 0&, 0& CloseClipboard DoEvents Application.ScreenUpdating = False Dim NewBook As String Workbooks.Add: ActiveSheet.Paste NewBook = ActiveWorkbook.Name With ActiveSheet.PageSetup .RightFooter = Me.Caption & " Le &D Page &P/&N" .PrintGridlines = False .Orientation = xlLandscape .PaperSize = xlPaperA4 .Zoom = False .FitToPagesWide = 1 .FitToPagesTall = False End With ActiveWindow.Visible = False Application.ScreenUpdating = True Me.Hide On Error Resume Next Windows(NewBook).SelectedSheets.PrintOut Copies:=1 Workbooks(NewBook).Close False Me.Show End Sub '-----------------------------------------
Salutations!
"Stéphan DuQuébec" a écrit dans le message de news:
Deux questions dans une seule et même journée......
J'ai vu dans le module d'aide que la méthode PrintForm puise dans le panneau de config. pour les paramètres d'impression par défaut. Mais par VBA, y a-t-il moyen de spécifier des intrants (exemples: imprimante autre que celle par défaut, impression en Landscape, en Letter8.5X11) comme c'est possible lors d'un PrintOut d'une région sélectionnée dans la feuille active.
Avec l'éditeur de macros, je tente de récupérer le code racollé à une impression d'une SelectedRegion pour la méthode de PrintForm mais sans succès.
Mission impossible ou mauvaise manière de procéder ?
Merci.
Bonjour Stéphane,
Pour imprimer un formulaire, la méthode Userform1.print ... ne laisse pas beaucoup de paramètres à définir.
Voici une procédure de Michel Perron sur le sujet :
'-----------------------------------------
Impression en mode paysage par classeur masqué:
'Déclaration des API dans le haut du module
Private Declare Function OpenClipboard& Lib "user32" (ByVal hwnd&)
Private Declare Function EmptyClipboard& Lib "user32" ()
Private Declare Function CloseClipboard& Lib "user32" ()
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte _
, ByVal bScan As Byte, ByVal dwFlags&, ByVal dwExtraInfo&)
Private Sub CommandButton1_Click() ' Impression écran
Me.Repaint
OpenClipboard 0&
EmptyClipboard
keybd_event &H2C, 0, 0&, 0&
CloseClipboard
DoEvents
Application.ScreenUpdating = False
Dim NewBook As String
Workbooks.Add: ActiveSheet.Paste
NewBook = ActiveWorkbook.Name
With ActiveSheet.PageSetup
.RightFooter = Me.Caption & " Le &D Page &P/&N"
.PrintGridlines = False
.Orientation = xlLandscape
.PaperSize = xlPaperA4
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = False
End With
ActiveWindow.Visible = False
Application.ScreenUpdating = True
Me.Hide
On Error Resume Next
Windows(NewBook).SelectedSheets.PrintOut Copies:=1
Workbooks(NewBook).Close False
Me.Show
End Sub
'-----------------------------------------
Salutations!
"Stéphan DuQuébec" <StphanDuQubec@discussions.microsoft.com> a écrit dans le message de news:
A98C7305-3E02-47F8-A7FF-F25369BC52F3@microsoft.com...
Deux questions dans une seule et même journée......
J'ai vu dans le module d'aide que la méthode PrintForm puise dans le panneau
de config. pour les paramètres d'impression par défaut. Mais par VBA, y
a-t-il moyen de spécifier des intrants (exemples: imprimante autre que celle
par défaut, impression en Landscape, en Letter8.5X11) comme c'est possible
lors d'un PrintOut d'une région sélectionnée dans la feuille active.
Avec l'éditeur de macros, je tente de récupérer le code racollé à une
impression d'une SelectedRegion pour la méthode de PrintForm mais sans succès.
Mission impossible ou mauvaise manière de procéder ?
Pour imprimer un formulaire, la méthode Userform1.print ... ne laisse pas beaucoup de paramètres à définir.
Voici une procédure de Michel Perron sur le sujet :
'----------------------------------------- Impression en mode paysage par classeur masqué: 'Déclaration des API dans le haut du module Private Declare Function OpenClipboard& Lib "user32" (ByVal hwnd&) Private Declare Function EmptyClipboard& Lib "user32" () Private Declare Function CloseClipboard& Lib "user32" () Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte _ , ByVal bScan As Byte, ByVal dwFlags&, ByVal dwExtraInfo&)
Private Sub CommandButton1_Click() ' Impression écran Me.Repaint OpenClipboard 0& EmptyClipboard keybd_event &H2C, 0, 0&, 0& CloseClipboard DoEvents Application.ScreenUpdating = False Dim NewBook As String Workbooks.Add: ActiveSheet.Paste NewBook = ActiveWorkbook.Name With ActiveSheet.PageSetup .RightFooter = Me.Caption & " Le &D Page &P/&N" .PrintGridlines = False .Orientation = xlLandscape .PaperSize = xlPaperA4 .Zoom = False .FitToPagesWide = 1 .FitToPagesTall = False End With ActiveWindow.Visible = False Application.ScreenUpdating = True Me.Hide On Error Resume Next Windows(NewBook).SelectedSheets.PrintOut Copies:=1 Workbooks(NewBook).Close False Me.Show End Sub '-----------------------------------------
Salutations!
"Stéphan DuQuébec" a écrit dans le message de news:
Deux questions dans une seule et même journée......
J'ai vu dans le module d'aide que la méthode PrintForm puise dans le panneau de config. pour les paramètres d'impression par défaut. Mais par VBA, y a-t-il moyen de spécifier des intrants (exemples: imprimante autre que celle par défaut, impression en Landscape, en Letter8.5X11) comme c'est possible lors d'un PrintOut d'une région sélectionnée dans la feuille active.
Avec l'éditeur de macros, je tente de récupérer le code racollé à une impression d'une SelectedRegion pour la méthode de PrintForm mais sans succès.
Mission impossible ou mauvaise manière de procéder ?
Merci.
Stéphan DuQuébec
Mes remerciements, Michdenis.
Bonne journée à vous, en cette belle journée suivant la queue de Katrina.....
Attention, gens hors Québec, ne pensez pas mal !!!!!!! La queue de Katrina n'est pas celle que vous avez en tête !!!!!
Bonjour Stéphane,
Pour imprimer un formulaire, la méthode Userform1.print ... ne laisse pas beaucoup de paramètres à définir.
Voici une procédure de Michel Perron sur le sujet :
'----------------------------------------- Impression en mode paysage par classeur masqué: 'Déclaration des API dans le haut du module Private Declare Function OpenClipboard& Lib "user32" (ByVal hwnd&) Private Declare Function EmptyClipboard& Lib "user32" () Private Declare Function CloseClipboard& Lib "user32" () Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte _ , ByVal bScan As Byte, ByVal dwFlags&, ByVal dwExtraInfo&)
Private Sub CommandButton1_Click() ' Impression écran Me.Repaint OpenClipboard 0& EmptyClipboard keybd_event &H2C, 0, 0&, 0& CloseClipboard DoEvents Application.ScreenUpdating = False Dim NewBook As String Workbooks.Add: ActiveSheet.Paste NewBook = ActiveWorkbook.Name With ActiveSheet.PageSetup ..RightFooter = Me.Caption & " Le &D Page &P/&N" ..PrintGridlines = False ..Orientation = xlLandscape ..PaperSize = xlPaperA4 ..Zoom = False ..FitToPagesWide = 1 ..FitToPagesTall = False End With ActiveWindow.Visible = False Application.ScreenUpdating = True Me.Hide On Error Resume Next Windows(NewBook).SelectedSheets.PrintOut Copies:=1 Workbooks(NewBook).Close False Me.Show End Sub '-----------------------------------------
Salutations!
"Stéphan DuQuébec" a écrit dans le message de news:
Deux questions dans une seule et même journée......
J'ai vu dans le module d'aide que la méthode PrintForm puise dans le panneau de config. pour les paramètres d'impression par défaut. Mais par VBA, y a-t-il moyen de spécifier des intrants (exemples: imprimante autre que celle par défaut, impression en Landscape, en Letter8.5X11) comme c'est possible lors d'un PrintOut d'une région sélectionnée dans la feuille active.
Avec l'éditeur de macros, je tente de récupérer le code racollé à une impression d'une SelectedRegion pour la méthode de PrintForm mais sans succès.
Mission impossible ou mauvaise manière de procéder ?
Merci.
Mes remerciements, Michdenis.
Bonne journée à vous, en cette belle journée suivant la queue de Katrina.....
Attention, gens hors Québec, ne pensez pas mal !!!!!!! La queue de Katrina
n'est pas celle que vous avez en tête !!!!!
Bonjour Stéphane,
Pour imprimer un formulaire, la méthode Userform1.print ... ne laisse pas beaucoup de paramètres à définir.
Voici une procédure de Michel Perron sur le sujet :
'-----------------------------------------
Impression en mode paysage par classeur masqué:
'Déclaration des API dans le haut du module
Private Declare Function OpenClipboard& Lib "user32" (ByVal hwnd&)
Private Declare Function EmptyClipboard& Lib "user32" ()
Private Declare Function CloseClipboard& Lib "user32" ()
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte _
, ByVal bScan As Byte, ByVal dwFlags&, ByVal dwExtraInfo&)
Private Sub CommandButton1_Click() ' Impression écran
Me.Repaint
OpenClipboard 0&
EmptyClipboard
keybd_event &H2C, 0, 0&, 0&
CloseClipboard
DoEvents
Application.ScreenUpdating = False
Dim NewBook As String
Workbooks.Add: ActiveSheet.Paste
NewBook = ActiveWorkbook.Name
With ActiveSheet.PageSetup
..RightFooter = Me.Caption & " Le &D Page &P/&N"
..PrintGridlines = False
..Orientation = xlLandscape
..PaperSize = xlPaperA4
..Zoom = False
..FitToPagesWide = 1
..FitToPagesTall = False
End With
ActiveWindow.Visible = False
Application.ScreenUpdating = True
Me.Hide
On Error Resume Next
Windows(NewBook).SelectedSheets.PrintOut Copies:=1
Workbooks(NewBook).Close False
Me.Show
End Sub
'-----------------------------------------
Salutations!
"Stéphan DuQuébec" <StphanDuQubec@discussions.microsoft.com> a écrit dans le message de news:
A98C7305-3E02-47F8-A7FF-F25369BC52F3@microsoft.com...
Deux questions dans une seule et même journée......
J'ai vu dans le module d'aide que la méthode PrintForm puise dans le panneau
de config. pour les paramètres d'impression par défaut. Mais par VBA, y
a-t-il moyen de spécifier des intrants (exemples: imprimante autre que celle
par défaut, impression en Landscape, en Letter8.5X11) comme c'est possible
lors d'un PrintOut d'une région sélectionnée dans la feuille active.
Avec l'éditeur de macros, je tente de récupérer le code racollé à une
impression d'une SelectedRegion pour la méthode de PrintForm mais sans succès.
Mission impossible ou mauvaise manière de procéder ?
Bonne journée à vous, en cette belle journée suivant la queue de Katrina.....
Attention, gens hors Québec, ne pensez pas mal !!!!!!! La queue de Katrina n'est pas celle que vous avez en tête !!!!!
Bonjour Stéphane,
Pour imprimer un formulaire, la méthode Userform1.print ... ne laisse pas beaucoup de paramètres à définir.
Voici une procédure de Michel Perron sur le sujet :
'----------------------------------------- Impression en mode paysage par classeur masqué: 'Déclaration des API dans le haut du module Private Declare Function OpenClipboard& Lib "user32" (ByVal hwnd&) Private Declare Function EmptyClipboard& Lib "user32" () Private Declare Function CloseClipboard& Lib "user32" () Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte _ , ByVal bScan As Byte, ByVal dwFlags&, ByVal dwExtraInfo&)
Private Sub CommandButton1_Click() ' Impression écran Me.Repaint OpenClipboard 0& EmptyClipboard keybd_event &H2C, 0, 0&, 0& CloseClipboard DoEvents Application.ScreenUpdating = False Dim NewBook As String Workbooks.Add: ActiveSheet.Paste NewBook = ActiveWorkbook.Name With ActiveSheet.PageSetup ..RightFooter = Me.Caption & " Le &D Page &P/&N" ..PrintGridlines = False ..Orientation = xlLandscape ..PaperSize = xlPaperA4 ..Zoom = False ..FitToPagesWide = 1 ..FitToPagesTall = False End With ActiveWindow.Visible = False Application.ScreenUpdating = True Me.Hide On Error Resume Next Windows(NewBook).SelectedSheets.PrintOut Copies:=1 Workbooks(NewBook).Close False Me.Show End Sub '-----------------------------------------
Salutations!
"Stéphan DuQuébec" a écrit dans le message de news:
Deux questions dans une seule et même journée......
J'ai vu dans le module d'aide que la méthode PrintForm puise dans le panneau de config. pour les paramètres d'impression par défaut. Mais par VBA, y a-t-il moyen de spécifier des intrants (exemples: imprimante autre que celle par défaut, impression en Landscape, en Letter8.5X11) comme c'est possible lors d'un PrintOut d'une région sélectionnée dans la feuille active.
Avec l'éditeur de macros, je tente de récupérer le code racollé à une impression d'une SelectedRegion pour la méthode de PrintForm mais sans succès.
Mission impossible ou mauvaise manière de procéder ?