Comment pratiques-tu pour réaliser ta copie d'écran ?
Voici une procédure que j'utilise dans une de mes applications pour imprimer le screen-shot contenu dans le presse-papiers. Remarque : l'impression utilise la largeur de la feuille, ce qui agrandie des images dont la taille est inférieure à la largeur... Essaie et tu comprendras mieux...
Sub ImprimerLePressePapier() 'Définition des variables Dim Hauteur Dim Hauteur1 Dim Largeur Dim Largeur1 Dim Zoom Dim Zoom1 'Je vérifie que le presse-papier n'est pas vide If Not Clipboard.GetFormat(2) Then MsgBox "Il n'y a aucune image dans le presse-papier" & vbCr _ & "ou celui-ci a été vidé.", vbExclamation, _ "Fin de la procédure" Exit Sub End If 'Je récupère la hauteur et la largeur de l'image Hauteur = Clipboard.GetData.Height Largeur = Clipboard.GetData.Width 'Je récupère la hauteur et la largeur de l'imprimante Largeur1 = Printer.ScaleWidth Hauteur1 = Printer.ScaleHeight
'Je détermine le zoom à appliquer sachant qu'une copie d'écran est souvent plus large que haute 'd'autant que j'imprime en mode portrait Zoom = Largeur1 / Largeur 'Je modifie la largeur et la hauteur à utiliser Largeur = Largeur * Zoom Hauteur = Hauteur * Zoom 'J'envoie les informations à l'imprimante Printer.PaintPicture Clipboard.GetData, 0, 0, Largeur, Hauteur 'J'indique un petit commentaire sous l'image Printer.CurrentY = Hauteur Printer.Print "Impression réalisée le " & Format(Date, "dd mmmm yyyy"); Printer.CurrentX = Printer.ScaleWidth - Printer.TextWidth("© Programmix, septembre 2002") Printer.Print "© Programmix, septembre 2002" Printer.EndDoc 'J'informe l'utilisateur que c'est envoyé MsgBox "L'image a été envoyée à l'imprimante.", , "C'est fait..." 'Je vide le presse-papier Clipboard.Clear End Sub Programmix
------------------------------- Réponse au message : -------------------------------
> > > J'utilise vba sous access 2000! > > C'est bon j'ai trouver comment faire! e fait je fais un imprime ecran et j'utilise word pour l'imprimer! > mais si tu as une autre solution je suis prenant!
|