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
| Dim ws As Worksheet
Private Sub CommandButton1_Click()
Dim I As Integer
With Sheets("Imprimer RSI")
.Range("Tableau51017").ClearContents
For I = 1 To Me.ListView1.ListItems.Count
.Range("A" & I + 5).Value = Me.ListView1.ListItems(I).ListSubItems(1).Text
.Range("B" & I + 5).Value = Me.ListView1.ListItems(I).ListSubItems(2).Text
.Range("C" & I + 5).Value = Me.ListView1.ListItems(I).ListSubItems(3).Text
.Range("D" & I + 5).Value = Me.ListView1.ListItems(I).ListSubItems(4).Text
.Range("E" & I + 5).Value = Me.ListView1.ListItems(I).ListSubItems(5).Text
.Range("F" & I + 5).Value = Me.ListView1.ListItems(I).ListSubItems(6).Text
Next I
Me.Hide
On Error Resume Next
Range("A6:A500").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
'Worksheets("Imprimer compte").PageSetup.Orientation = xlLandscape
'.PrintPreview
'.PrintOut 'Imprime la feuille
UserForm_Initialize
End With
End Sub
Private Sub UserForm_Initialize()
ComboBox1.Clear
'Sheets("Feuil1").Activate
Set ws = Sheets("Feuil1") 'Correspond au nom de votre onglet dans le fichier Excel
With Me.ComboBox1
For j = 2 To ws.Range("A" & Rows.Count).End(xlUp).Row
.AddItem ws.Range("A" & j)
Next j
End With
End Sub
Private Sub UserForm_Activate()
With ListView1
.View = 3 ' type Report
.Gridlines = True ' affichage de lignes
.FullRowSelect = True ' sélection complète de la ligne
.HideColumnHeaders = False ' afficher les en-têtes de colonnes
.LabelEdit = 1 ' ne pas autoriser la saisie
.ColumnHeaders.Clear ' Vider le listview
.ColumnHeaders.Add , , "Num", 0
.ColumnHeaders.Add , , "Date", 80
.ColumnHeaders.Add , , "Client", 80
.ColumnHeaders.Add , , "N° Facture", 80, lvwColumnCenter
.ColumnHeaders.Add , , "Paiement", 80
.ColumnHeaders.Add , , "Crédit", 80
.ColumnHeaders.Add , , "Débit", 80
End With
InitList "", 1
End Sub
Private Sub InitList(V As String, Col As Long)
N = 1
With Feuil12 ' = aux CodeName
ListView1.ListItems.Clear
For L = 2 To .Range("A" & Rows.Count).End(xlUp).Row
If Format(.Cells(L, Col), "mm") Like LCase(V) & "*" Then
If Left(.Cells(L, 4), 1) = "D" Or Left(.Cells(L, 4), 1) = "F" Then
ListView1.ListItems.Add , , L
ListView1.ListItems(N).ListSubItems.Add , , .Cells(L, 2)
ListView1.ListItems(N).ListSubItems.Add , , Format(.Cells(L, 3), "mm")
ListView1.ListItems(N).ListSubItems.Add , , .Cells(L, 4)
ListView1.ListItems(N).ListSubItems.Add , , .Cells(L, 5)
ListView1.ListItems(N).ListSubItems.Add , , .Cells(L, 6)
ListView1.ListItems(N).ListSubItems.Add , , .Cells(L, 7)
N = N + 1
End If
End If
Next
End With
Label1.Caption = "Nombre d'opération trouvé : " & ListView1.ListItems.Count
End Sub
Private Sub ComboBox1_Change()
InitList ComboBox1.Value, 2
End Sub
'Private Sub Userform_QueryClose(Cancel As Integer, CloseMode As Integer)
'If CloseMode = vbFormControlMenu Then Cancel = True ' désactive la croix rouge
'End Sub |