Tuto=<impression d'un text>

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 530 fois - Téléchargée 29 fois

Contenu du snippet

Voici un tout petit tutorial pour imprimer une cas texte

Source / Exemple :


Private Sub Form_Load()
Contenu.Text = "Voici votre texte imprimé sur une feuille !
End Sub
-----
Private Sub CmdImprimer_Click()
Printer.Print 'initialisation de l'imprimante
Printer.Print Contenu.Text
Printer.EndDoc 
End Sub

Conclusion :


- Explications : La syntaxe est plutôt simple et c'est tant mieux pour nous ;) .

La première ligne de la procédure : Printer.Print, est nécéssaire à l'initialisation de l'imprimante. Si on ne place pas cette ligne, l'impression restera en suspend jusqu'à la fermeture de votre programme.

Ensuite on imprime le texte de la TextBox "Contenu" avec : Printer.Print Contenu.Text .

Pour finir : Printer.EndDoc marque la fin de l'impression.

Vous pouvez tester votre programme... n'oubliez pas d'allumer l'imprimante ;) !

A voir également

Ajouter un commentaire

Commentaires

Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
101
oui tout à fait programmix ! bien vu (j'ai fait un bête copier coller !).
Messages postés
1134
Date d'inscription
mercredi 2 octobre 2002
Statut
Membre
Dernière intervention
24 juillet 2011
1
Bonjour

Je réagis parce qu'il me semble qu'il y a peut-être une mauvaise compréhension des "paramètres"

Je vous cite
Printer.CurrentX = 20 'marge gauche
Printer.CurrentY = 25 'marge droite

Mais ne serait-ce pas plutôt
Printer.CurrentX = 20 'marge gauche
Printer.CurrentY = 25 'marge HAUTE

Bien à vous,

Programmix
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
101
Il faut splitter ta chaîne sur le vbcrlf, puis imprimer ligne par ligne.

Ca doit ressembler à quelque chose comme cà :
Remplacer Printer.Print Recherche.Twest.Text; PrinterPage par :

Dim tmp() as String
tmp = split(Recherche.Twest.Text, vbcrlf)
Dim i as integer
for i = 0 to UBound(tmp)
Printer.CurrentX = 20 'marge gauche
Printer.CurrentY = 25 'marge droite
Printer.Print tmp(i)
next i
Messages postés
16
Date d'inscription
samedi 26 juillet 2003
Statut
Membre
Dernière intervention
27 janvier 2020

ok mais comment tu le fais.
aurais tu l'extrème amabilité de m'envoyer la ligne de code
et où il faut la placer.
voici les lignes que j'ai déja :

Printer.FontSize = Recherche.Twest.FontSize
Printer.Font = Recherche.Twest.Font
Printer.ScaleMode = vbMillimeters
Printer.ScaleLeft = 25 'indique la marge gauche de toute les lignes A TESTER
'Pour la 1ere ligne
Printer.CurrentX = 20 'marge gauche
Printer.CurrentY = 25 'marge droite

msg = MsgBox("Voulez vous imprimer votre recherche maintenant", vbYesNo, "Impression")
If msg = vbNo Then
MsgBox "Impression annulé", vbExclamation, ""
GoTo fin:
Else
Printer.Print Recherche.Twest.Text; PrinterPage
Printer.EndDoc
End If
fin:

Un grand merci à toi de prendre en charge les débutants en difficultés.
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
101
Il faut redéfinir le CurrentY pour chaque ligne imprimée.
Afficher les 14 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.