1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146
| Private Sub imprimer_Click()
On Error GoTo Err_Imprim
P = 0
If ((ListC.ListItems.Count * 2) / 59) = ((ListC.ListItems.Count * 2) \ 59) Then
Page = ((ListC.ListItems.Count * 2) \ 59)
Else
Page = ((ListC.ListItems.Count * 2) \ 59) + 1
End If
Printer.ScaleMode = 6
Printer.Font = "verdana"
If ListC.ListItems.Count >= 1 Then ' grille.Rows <> 1 Then
MousePointer = 11
Printer.FontBold = True
Printer.PaperSize = vbPRPSA4
Printer.PrintQuality = vbPRPQHigh
Printer.Orientation = vbPRORLandscape 'vbPRORPortrait
Printer.CurrentX = 0
Printer.CurrentY = 5
Printer.FontSize = 8
Printer.FontUnderline = False
Printer.PaintPicture (MyResources.Image1, 500, 500, 1000, 1000)
Printer.CurrentX = 122
Printer.CurrentY = 10
Printer.FontSize = 14
Printer.FontUnderline = True
Printer.Print "Chantier : " & cbb_chantier.Text
Printer.FontSize = 14
Printer.CurrentX = 230
Printer.CurrentY = 10
Printer.FontUnderline = True
Printer.Print "Total : " & txtporcent.Text & " "
Printer.FontUnderline = False
Printer.FontSize = 10
Printer.CurrentX = 0
Printer.CurrentY = 25
Printer.Print "Date :"
Printer.CurrentX = 61
Printer.CurrentY = 25
Printer.Print "% :"
Printer.CurrentX = 122
Printer.CurrentY = 25
Printer.Print "Nom Facture :"
Printer.CurrentX = 183
Printer.CurrentY = 25
Printer.Print "Valeur :"
Printer.CurrentX = 244
Printer.CurrentY = 25
Printer.Print "Facture :"
Printer.FontUnderline = False
Printer.FontBold = False
Printer.FontSize = 10
k = 1
For i = 1 To ListC.ListItems.Count
Printer.FontBold = False
ListC.ListItems.Item(i).Selected = True
' If (k / 2) <> (k \ 2) Then Printer.Line (0, (15 + k * 6) - 1)-(285, (15 + (k + 1) * 6) - 1), RGB(200, 200, 200), BF 'Si Ligne Impaire
Printer.CurrentX = 0
Printer.CurrentY = 30 + k * 6
Printer.Print ListC.SelectedItem.SubItems(1)
Printer.CurrentX = 61
Printer.CurrentY = 30 + k * 6
Printer.Print ListC.SelectedItem.SubItems(2)
Printer.CurrentX = 122
Printer.CurrentY = 30 + k * 6
Printer.Print ListC.SelectedItem.SubItems(3)
Printer.CurrentX = 183
Printer.CurrentY = 30 + k * 6
Printer.Print ListC.SelectedItem.SubItems(4)
Printer.CurrentX = 244
Printer.CurrentY = 30 + k * 6
Printer.Print ListC.SelectedItem.SubItems(5)
Printer.Print Chr(0)
Printer.FontSize = 10
Printer.FontBold = False
'Printer.FontUnderline = True
Printer.CurrentX = 260
Printer.CurrentY = 195
Printer.Print "Le " & Date & " "
Printer.CurrentX = 0
Printer.CurrentY = 195
Printer.Print P + 1 & " / " & Page
k = k + 1
If k = 30 Then
P = P + 1
Printer.EndDoc
Printer.ScaleMode = 6
Printer.Font = "verdana"
Printer.PaperSize = vbPRPSA4
Printer.PrintQuality = vbPRPQHigh
Printer.Orientation = vbPRORLandscape
Printer.FontSize = 10
Printer.FontUnderline = True
Printer.FontBold = True
Printer.CurrentX = 0
Printer.CurrentY = 25
Printer.Print "Date :"
Printer.CurrentX = 61
Printer.CurrentY = 25
Printer.Print "% :"
Printer.CurrentX = 122
Printer.CurrentY = 25
Printer.Print "Nom Facture :"
Printer.CurrentX = 183
Printer.CurrentY = 25
Printer.Print "Valeur :"
Printer.CurrentX = 244
Printer.CurrentY = 25
Printer.Print "Facture :"
Printer.FontUnderline = False
Printer.FontBold = False
Printer.FontSize = 10
k = 1
End If
Next
Printer.EndDoc ' Fin de l'impression
MousePointer = 1
End If
For i = 1 To ListC.ListItems.Count
ListC.ListItems.Item(i).Selected = False
Next
Sortie_Err_Imprim:
MousePointer = 1
Exit Sub
Err_Imprim:
NoErr = err.Number
Select Case err.Number
Case 482
Message = "Aucune Imprimante n'a était Détectée"
Case Else
Message = err.Description
End Select
MsgBox Message, vbCritical, "Attention"
Resume Sortie_Err_Imprim
End Sub |
Partager