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
|
Private Sub recherche() 'recherche multicritere
Dim lignedebut As Integer
Dim derniereligne As Integer
'Dim jj As Long
Dim Cu1$, Cu2$, Cu3$, Cu4$, Cu5$, Cu6$, cu7$, Cu8$, Cu9$, Cu10$, Cu11$, Cu12$, Cu13$, Cu14$, Cu15$, Cu16$, Cu17$, Cu18$, Cu19$
Cu1 = ""
Cu1 = ""
Cu2 = ""
Cu3 = ""
Cu4 = ""
Cu5 = ""
Cu6 = ""
cu7 = ""
Cu8 = ""
Cu9 = ""
Cu10 = ""
Cu11 = ""
Cu12 = ""
Cu13 = ""
Cu14 = ""
Cu15 = ""
Cu16 = ""
Cu17 = ""
Cu18 = ""
Cu19 = ""
ListView1.ListItems.Clear ' efface le contenu de la listviews
derniereligne = Sheets("feuil2").Range("A4").End(xlDown).Row 'derniere ligne occupee dans colonne A
Dim lig As Integer ' compteur ligne listview
lig = 1
Dim coul
coul = vbRed
For lignedebut = 4 To derniereligne 'on test le contenu des combobox
If ComboBox24.Value <> "" Then Cu1 = ComboBox24.Value Else Cu1 = Sheets("feuil2").Cells(lignedebut, 2)
If ComboBox6.Value <> "" Then Cu2 = ComboBox6.Value Else Cu2 = Sheets("feuil2").Cells(lignedebut, 1)
If ComboBox5.Value <> "" Then Cu3 = ComboBox5.Value Else Cu3 = Sheets("feuil2").Cells(lignedebut, 4)
If ComboBox26.Value <> "" Then Cu4 = ComboBox26.Value Else Cu4 = Sheets("feuil2").Cells(lignedebut, 3)
If ComboBox14.Value <> "" Then Cu5 = ComboBox14.Value Else Cu5 = Sheets("feuil2").Cells(lignedebut, 20)
If ComboBox15.Value <> "" Then Cu6 = ComboBox15.Value Else Cu6 = Sheets("feuil2").Cells(lignedebut, 21)
If ComboBox16.Value <> "" Then cu7 = ComboBox16.Value Else cu7 = Sheets("feuil2").Cells(lignedebut, 22)
If ComboBox17.Value <> "" Then Cu8 = ComboBox17.Value Else Cu8 = Sheets("feuil2").Cells(lignedebut, 19)
If ComboBox23.Value <> "" Then Cu9 = ComboBox23.Value Else Cu9 = Sheets("feuil2").Cells(lignedebut, 9)
If ComboBox22.Value <> "" Then Cu10 = ComboBox22.Value Else Cu10 = Sheets("feuil2").Cells(lignedebut, 11)
If ComboBox19.Value <> "" Then Cu11 = ComboBox19.Value Else Cu11 = Sheets("feuil2").Cells(lignedebut, 10)
If ComboBox9.Value <> "" Then Cu12 = ComboBox9.Value Else Cu12 = Sheets("feuil2").Cells(lignedebut, 16)
If ComboBox8.Value <> "" Then Cu13 = ComboBox8.Value Else Cu13 = Sheets("feuil2").Cells(lignedebut, 17)
If ComboBox3.Value <> "" Then Cu14 = ComboBox3.Value Else Cu14 = Sheets("feuil2").Cells(lignedebut, 5)
If ComboBox27.Value <> "" Then Cu15 = ComboBox27.Value Else Cu15 = Sheets("feuil2").Cells(lignedebut, 7)
If ComboBox29.Value <> "" Then Cu16 = ComboBox29.Value Else Cu16 = Sheets("feuil2").Cells(lignedebut, 34)
If ComboBox28.Value <> "" Then Cu17 = ComboBox28.Value Else Cu17 = Sheets("feuil2").Cells(lignedebut, 8)
If ComboBox30.Value <> "" Then Cu18 = ComboBox30.Value Else Cu18 = Sheets("feuil2").Cells(lignedebut, 33)
If ComboBox4.Value <> "" Then Cu19 = ComboBox4.Value Else Cu19 = Sheets("feuil2").Cells(lignedebut, 6)
'test final avec toute les conditon imbriquee
'affichage dans listbox en multicolonne
If Sheets("feuil2").Cells(lignedebut, 2) = Cu1 And Sheets("feuil2").Cells(lignedebut, 1) = Cu2 And Sheets("feuil2").Cells(lignedebut, 4) = Cu3 And _
Sheets("feuil2").Cells(lignedebut, 3) = Cu4 And Sheets("feuil2").Cells(lignedebut, 20) = Cu5 And Sheets("feuil2").Cells(lignedebut, 21) = Cu6 And _
Sheets("feuil2").Cells(lignedebut, 22) = cu7 And Sheets("feuil2").Cells(lignedebut, 19) = Cu8 And Sheets("feuil2").Cells(lignedebut, 9) = Cu9 And _
Sheets("feuil2").Cells(lignedebut, 11) = Cu10 And Sheets("feuil2").Cells(lignedebut, 10) = Cu11 And Sheets("feuil2").Cells(lignedebut, 16) = Cu12 And _
Sheets("feuil2").Cells(lignedebut, 17) = Cu13 And Sheets("feuil2").Cells(lignedebut, 5) = Cu14 And Sheets("feuil2").Cells(lignedebut, 7) = Cu15 And _
Sheets("feuil2").Cells(lignedebut, 34) = Cu16 And Sheets("feuil2").Cells(lignedebut, 8) = Cu17 And Sheets("feuil2").Cells(lignedebut, 33) = Cu18 And _
Sheets("feuil2").Cells(lignedebut, 6) = Cu19 Then
'========================================listview===============================================
With ListView1
.ListItems.Add , , lignedebut
.FullRowSelect = True
.View = lvwReport 'affiche en details
End With
If Sheets("feuil2").Cells(lignedebut, 2).Value = "chaufferie" Then coul = vbRed Else coul = vbBlue
ListView1.ListItems(lig).ForeColor = coul
ListView1.ListItems(lig).ListSubItems.Add , , Sheets("feuil2").Cells(lignedebut, 1).Value
ListView1.ListItems(lig).ListSubItems.Item(1).ForeColor = coul
ListView1.ListItems(lig).ListSubItems.Add , , Sheets("feuil2").Cells(lignedebut, 2).Value
ListView1.ListItems(lig).ListSubItems.Item(2).ForeColor = coul
ListView1.ListItems(lig).ListSubItems.Add , , Sheets("feuil2").Cells(lignedebut, 4).Value
ListView1.ListItems(lig).ListSubItems.Item(3).ForeColor = coul
ListView1.ListItems(lig).ListSubItems.Add , , Sheets("feuil2").Cells(lignedebut, 5).Value
ListView1.ListItems(lig).ListSubItems.Item(4).ForeColor = coul
ListView1.ListItems(lig).ListSubItems.Add , , Sheets("feuil2").Cells(lignedebut, 34).Value 'proprio col6"
ListView1.ListItems(lig).ListSubItems.Item(5).ForeColor = coul
ListView1.ListItems(lig).ListSubItems.Add , , Sheets("feuil2").Cells(lignedebut, 20).Value
ListView1.ListItems(lig).ListSubItems.Item(6).ForeColor = coul
ListView1.ListItems(lig).ListSubItems.Add , , Sheets("feuil2").Cells(lignedebut, 21).Value
ListView1.ListItems(lig).ListSubItems.Item(7).ForeColor = coul
ListView1.ListItems(lig).ListSubItems.Add , , Sheets("feuil2").Cells(lignedebut, 22).Value & " "
ListView1.ListItems(lig).ListSubItems.Item(8).ForeColor = coul
ListView1.ListItems(lig).ListSubItems.Add , , Sheets("feuil2").Cells(lignedebut, 19).Value
ListView1.ListItems(lig).ListSubItems.Item(9).ForeColor = coul
ListView1.ListItems(lig).ListSubItems.Add , , Sheets("feuil2").Cells(lignedebut, 11).Value
ListView1.ListItems(lig).ListSubItems.Item(10).ForeColor = coul
ListView1.ListItems(lig).ListSubItems.Add , , Sheets("feuil2").Cells(lignedebut, 9).Value
ListView1.ListItems(lig).ListSubItems.Item(11).ForeColor = coul
ListView1.ListItems(lig).ListSubItems.Add , , Sheets("feuil2").Cells(lignedebut, 10).Value
ListView1.ListItems(lig).ListSubItems.Item(12).ForeColor = coul
ListView1.ListItems(lig).ListSubItems.Add , , Sheets("feuil2").Cells(lignedebut, 16).Value
ListView1.ListItems(lig).ListSubItems.Item(13).ForeColor = coul
ListView1.ListItems(lig).ListSubItems.Add , , Sheets("feuil2").Cells(lignedebut, 17).Value
ListView1.ListItems(lig).ListSubItems.Item(14).ForeColor = coul
lig = lig + 1 'compteur ligne listview
'If (lig And 1) = 0 Then coul = vbRed Else coul = vbYellow 'detecte le nb si paire en rouge sinon jaune
'=====================================listview=========================================================
' jj = jj + 1
End If
Next lignedebut
End Sub |
Partager