![]() |
|
Forum
|
|
|
#1 (permalink) |
|
Guest
Messages: n/a
|
Bonjour à tous,
Avec: UserForm1.PrintForm qui est placer sur un bouton de validation j'imprime les données remplies dans l'userform, le problème l'impression se fait au bord gauche de la feuille. Et-il possible de le centrer sans passer par la config de l'imprimante ?? par avance merci @denis |
|
|
#2 (permalink) |
|
Guest
Messages: n/a
|
bonsoir Denis
j'espére que cet exemple pourra t'aider Private Declare Sub keybd_event Lib "user32" ( _ ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, _ ByVal dwExtraInfo As Long) Private Sub CommandButton1_Click() 'impression de l'USF au centre de la feuille 'http://www.excel-downloads.com/html/French/forum/read.php?f=1&i=121620&t=121620 'testé avec WinXP et Excel2002 'michelxld le 19.10.2004 'nécéssite d'activer la référence microsoft Word xx.x Object Library Dim Wrd As Word.Application Dim WrdDoc As Word.Document Dim Largeur As Single, Hauteur As Single Largeur = Me.Width 'largeur USF Hauteur = Me.Height 'hauteur USF 'Copie d'écran de la forme active keybd_event vbKeySnapshot, 1, 0&, 0& DoEvents Set Wrd = CreateObject("Word.Application") 'creation session Word On Error Resume Next Set WrdDoc = Wrd.Documents.Add Wrd.Visible = False 'pour que Word reste masqué pendant l'opération Wrd.Selection.PasteSpecial 'colle dans le document Word With WrdDoc.Shapes(1) 'les marges Word sont supposées identiques left/right & top/bottom 'et le format portrait par défaut 'position horizontale de l'image dans le document .Left = ((595.2755906 - (WrdDoc.PageSetup.LeftMargin * 2)) - Largeur) / 2 'position verticale de l'image dans le document .Top = ((841.8897638 - (WrdDoc.PageSetup.TopMargin * 2)) - Hauteur) / 2 End With WrdDoc.PrintOut 'impression WrdDoc.Close False 'ferme le document Word sans sauvegarde WrdDoc.Quit 'ferme l'application Word End Sub bonne soirée MichelXld |
| ANNONCES | |
| Liens sociaux |
| Outils de la discussion | |
|
|