merci ça a super bien marché pour l'initialisatio mais je me retrouve incapable de l'appliquer au reste, mais je crois pas que se soit tellement mon histoire de date qui ralentisse mon code.
je pense que je dois scanner encore plusieur fois ma feuille.
si tu peut m'aider avec un bout de code car j'ai du mal à appliquer les indication que tu m'as donné.
merci d'avance
Private Sub bouton_OK_Click()
On Error Resume Next
Application.ScreenUpdating = False
If ComboBox1.Value = 'tous' Then
Range('G12').AutoFilter field:=7
Else
Range('G12').AutoFilter field:=7, Criteria1:=ComboBox1.Value
End If
If ComboBox2.Value = 'tous' Then
Range('K12').AutoFilter field:=11
Else
Range('K12').AutoFilter field:=11, Criteria1:=ComboBox2.Value
End If
If ComboBox3.Value = 'tous' Then
Range('C12').AutoFilter field:=3
Else
Range('C12').AutoFilter field:=3, Criteria1:=ComboBox3.Value
End If
If ComboBox4.Value = 'tous' Then
Range('D12').AutoFilter field:=4
Else
Range('D12').AutoFilter field:=4, Criteria1:=ComboBox4.Value
End If
If ComboBox5.Value = 'tous' Then
Selection.AutoFilter field:=12
Else
Range('feuil1!L12').AutoFilter field:=12
Range('feuil1!L12:L65536').NumberFormat = '0'
Range('feuil2!A1').Value = ComboBox5.Value
Range('feuil2!A1') = CDate(ComboBox5.Value)
Range('feuil2!A1').NumberFormat = 'dd/mm/yy'
Range('feuil2!A1').Font.ColorIndex = 35
Range('L12').AutoFilter field:=12, Criteria1:=Range('feuil2!A1')
Range('L12') = ''
End If
If ComboBox5.Value = 'non émise' Then
Range('feuil1!L12').AutoFilter field:=12, Criteria1:=Empty
End If
If ComboBox6.Value = 'tous' Then
Range('M12').AutoFilter field:=13
Else
Range('feuil1!M12').AutoFilter field:=13
Range('feuil1!M12:M65536').NumberFormat = '0'
Range('feuil2!B1').Value = ComboBox6.Value
Range('feuil2!B1') = CDate(ComboBox6.Value)
Range('feuil2!B1').NumberFormat = 'dd/mm/yy'
Range('feuil2!B1').Font.ColorIndex = 35
Range('M12').AutoFilter field:=13, Criteria1:=Range('feuil2!B1')
Range('M12') = ''
End If
If ComboBox6.Value = 'non levée' Then
Range('feuil1!M12').AutoFilter field:=13, Criteria1:=Empty
End If
If ComboBox7.Value = 'tous' Then
Range('N12').AutoFilter field:=14
Else
Range('feuil1!N12').AutoFilter field:=14
Range('feuil1!N12:N65536').NumberFormat = '0'
Range('feuil2!C1').Value = ComboBox7.Value
Range('feuil2!C1') = CDate(ComboBox7.Value)
Range('feuil2!C1').NumberFormat = 'dd/mm/yy'
Range('feuil2!C1').Font.ColorIndex = 35
Range('M12').AutoFilter field:=14, Criteria1:=Range('feuil2!C1')
Range('M12') = ''
End If
If ComboBox7.Value = 'non contrôlée' Then
Range('feuil1!L14').AutoFilter field:=14, Criteria1:=Empty
End If
Range('feuil1!L12:L65536').NumberFormat = 'dd/mm/yy'
Range('feuil1!M12:M65536').NumberFormat = 'dd/mm/yy'
Range('feuil1!N12:N65536').NumberFormat = 'dd/mm/yy'
Range('A12').Select
ActiveCell.FormulaR1C1 = 'tous'
Selection.AutoFill Destination:=Range('A12:Q12'), Type:=xlFillDefault
Unload UserForm1
End Sub
voila le fameux code qui prend temps de temps.
merci de ton aide
je pense que je dois scanner encore plusieur fois ma feuille.
si tu peut m'aider avec un bout de code car j'ai du mal à appliquer les indication que tu m'as donné.
merci d'avance
Private Sub bouton_OK_Click()
On Error Resume Next
Application.ScreenUpdating = False
If ComboBox1.Value = 'tous' Then
Range('G12').AutoFilter field:=7
Else
Range('G12').AutoFilter field:=7, Criteria1:=ComboBox1.Value
End If
If ComboBox2.Value = 'tous' Then
Range('K12').AutoFilter field:=11
Else
Range('K12').AutoFilter field:=11, Criteria1:=ComboBox2.Value
End If
If ComboBox3.Value = 'tous' Then
Range('C12').AutoFilter field:=3
Else
Range('C12').AutoFilter field:=3, Criteria1:=ComboBox3.Value
End If
If ComboBox4.Value = 'tous' Then
Range('D12').AutoFilter field:=4
Else
Range('D12').AutoFilter field:=4, Criteria1:=ComboBox4.Value
End If
If ComboBox5.Value = 'tous' Then
Selection.AutoFilter field:=12
Else
Range('feuil1!L12').AutoFilter field:=12
Range('feuil1!L12:L65536').NumberFormat = '0'
Range('feuil2!A1').Value = ComboBox5.Value
Range('feuil2!A1') = CDate(ComboBox5.Value)
Range('feuil2!A1').NumberFormat = 'dd/mm/yy'
Range('feuil2!A1').Font.ColorIndex = 35
Range('L12').AutoFilter field:=12, Criteria1:=Range('feuil2!A1')
Range('L12') = ''
End If
If ComboBox5.Value = 'non émise' Then
Range('feuil1!L12').AutoFilter field:=12, Criteria1:=Empty
End If
If ComboBox6.Value = 'tous' Then
Range('M12').AutoFilter field:=13
Else
Range('feuil1!M12').AutoFilter field:=13
Range('feuil1!M12:M65536').NumberFormat = '0'
Range('feuil2!B1').Value = ComboBox6.Value
Range('feuil2!B1') = CDate(ComboBox6.Value)
Range('feuil2!B1').NumberFormat = 'dd/mm/yy'
Range('feuil2!B1').Font.ColorIndex = 35
Range('M12').AutoFilter field:=13, Criteria1:=Range('feuil2!B1')
Range('M12') = ''
End If
If ComboBox6.Value = 'non levée' Then
Range('feuil1!M12').AutoFilter field:=13, Criteria1:=Empty
End If
If ComboBox7.Value = 'tous' Then
Range('N12').AutoFilter field:=14
Else
Range('feuil1!N12').AutoFilter field:=14
Range('feuil1!N12:N65536').NumberFormat = '0'
Range('feuil2!C1').Value = ComboBox7.Value
Range('feuil2!C1') = CDate(ComboBox7.Value)
Range('feuil2!C1').NumberFormat = 'dd/mm/yy'
Range('feuil2!C1').Font.ColorIndex = 35
Range('M12').AutoFilter field:=14, Criteria1:=Range('feuil2!C1')
Range('M12') = ''
End If
If ComboBox7.Value = 'non contrôlée' Then
Range('feuil1!L14').AutoFilter field:=14, Criteria1:=Empty
End If
Range('feuil1!L12:L65536').NumberFormat = 'dd/mm/yy'
Range('feuil1!M12:M65536').NumberFormat = 'dd/mm/yy'
Range('feuil1!N12:N65536').NumberFormat = 'dd/mm/yy'
Range('A12').Select
ActiveCell.FormulaR1C1 = 'tous'
Selection.AutoFill Destination:=Range('A12:Q12'), Type:=xlFillDefault
Unload UserForm1
End Sub
voila le fameux code qui prend temps de temps.
merci de ton aide