Bonjour le forum
Avec l’application ci-dessous je trie des articles suivant des valeurs d’une combobox, le résultat (les lignes filtrées) je le copie dans une autre feuille.
Tout marche bien.
Je voudrais balayer toutes les valeurs de la combo afin que le tri et la création des feuilles se fassent automatiquement .
Je pense qu’il faut ajouter une phrase du genre ' For each ComboBox1.Value….. ' mais là je cale.
Si quelqu’un a une idée, je suis preneur
Merci d’avance
Francis
'trie les articles
For L = Derligne To 10 Step -1
MotCherche = Application.Find(ComboBox1.Value, Cells(L, 4))
If Not (IsError(MotCherche)) Then
Cells(L, 4).EntireRow.Hidden = False
End If
Next L
'initialise la plage à copier
Set MaPlage = Range(Cells(1, 2), Cells(Derligne, 10))
Set MaPlage = MaPlage.SpecialCells(xlCellTypeVisible)
'Crée une feuille s'il ya lieu
Worksheets(ComboBox1.Value).Activate
If Err <> 0 Then Worksheets.Add.Name = ComboBox1.Value
Cells.Select
Selection.Delete Shift:=xlUp
'copie les lignes (données filtrées)
Dim Destination As Range
Set Destination = Sheets(ComboBox1.Value).Range('b1')
Set MaPlage = MaPlage.SpecialCells(xlCellTypeVisible)
MaPlage.Copy Destination
Avec l’application ci-dessous je trie des articles suivant des valeurs d’une combobox, le résultat (les lignes filtrées) je le copie dans une autre feuille.
Tout marche bien.
Je voudrais balayer toutes les valeurs de la combo afin que le tri et la création des feuilles se fassent automatiquement .
Je pense qu’il faut ajouter une phrase du genre ' For each ComboBox1.Value….. ' mais là je cale.
Si quelqu’un a une idée, je suis preneur
Merci d’avance
Francis
'trie les articles
For L = Derligne To 10 Step -1
MotCherche = Application.Find(ComboBox1.Value, Cells(L, 4))
If Not (IsError(MotCherche)) Then
Cells(L, 4).EntireRow.Hidden = False
End If
Next L
'initialise la plage à copier
Set MaPlage = Range(Cells(1, 2), Cells(Derligne, 10))
Set MaPlage = MaPlage.SpecialCells(xlCellTypeVisible)
'Crée une feuille s'il ya lieu
Worksheets(ComboBox1.Value).Activate
If Err <> 0 Then Worksheets.Add.Name = ComboBox1.Value
Cells.Select
Selection.Delete Shift:=xlUp
'copie les lignes (données filtrées)
Dim Destination As Range
Set Destination = Sheets(ComboBox1.Value).Range('b1')
Set MaPlage = MaPlage.SpecialCells(xlCellTypeVisible)
MaPlage.Copy Destination