cs_cheikhtba
Messages postés26Date d'inscriptionvendredi 31 décembre 2004StatutMembreDernière intervention27 février 2007
-
27 févr. 2007 à 11:26
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 2014
-
27 févr. 2007 à 18:26
Bonjour tout le monde j'ai créé un état vb qui m'imprime mes données mais je voulais que les données soient affichées dans un Tableau. C'est à dire je veux les fonction de l'objet Printer pour tracer des lignes et des colonnes.
(la seule chose qui sera différente seront les positions des textboxes, auxquelles il te faudra substituer un currentx et un currenty pour chacune de tes données
cs_cheikhtba
Messages postés26Date d'inscriptionvendredi 31 décembre 2004StatutMembreDernière intervention27 février 2007 27 févr. 2007 à 12:10
je le programme sous vb mais l'affichage c'est sous Microsoft Office Document Imaging, mon code est le suivant:
Private Sub btImprimer_Click()
'connection a la base de donnees
Set cnx = New ADODB.Connection
cnx.Open "dsn=facturefondation"
Set rs = New ADODB.Recordset
'creation de letat
Dim ligne As String
Dim X, Y As Integer, NbLigne As Long, NbPage As Long, i As Long
Dim temp As Boolean
'On configure l'impression
'Unité de mesure en millimètres
NbPage = IIf(NbLigne Mod 16 > 0, NbLigne \ 16 + 1, NbLigne \ 16)
'place le curseur
Y = 20
i = 1
While Not (rs.EOF)
' rs.MoveFirst
' For i = 0 To NbLigne - 1
' If (temp = False) Then
i = i + 1
Printer.CurrentX = 10 '20
Printer.CurrentY = Y
Printer.FontSize = 10
Printer.FontName = "Arial "
Printer.Print rs.Fields("id").Value ' & " " & rs.Fields("num_fact").Value 'concatene le nom et le prenom
Printer.CurrentX = 25 '100
Printer.CurrentY = Y
Printer.FontSize = 10
Printer.FontName = "code-39"
Printer.Print rs.Fields("num_fact").Value ' "*" & rs.Fields("num_fact").Value & "*" 'en code 39 le signe de debut et de fin du code barre est *
rs.MoveNext 'permet d'aller sur le champs suivant dans la table employé
Y = Y + 12 'on réinitialise la position du curseur
If i = 15 Then
Printer.NewPage
Call EntetePage
Y = 20
i = 0
End If
DoEvents
' rs.MoveNext
' Next i
Wend
Printer.EndDoc
rs.Close
End Sub
cordialement
Vous n’avez pas trouvé la réponse que vous recherchez ?
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 27 févr. 2007 à 12:59
Si tu développes sous VB, alors :
1) Microsoft Office n'a plus rien à voir à partir de l'instant où tu as extrait tes données à imprimer
2) ma 1ère réponse reste la bonne pour l'utilisation de l'objet Printer.
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 27 févr. 2007 à 18:26
J'ai utilisé un module, bien sur, par habitude de "propreté"...
Bien que je te conseille d'en faire autant, tu n'es pas obligé de suivre cet exemple et peux tout mettre dans le code de ta Form.
Où est donc le problème ?