Q
Quaisako
Guest
Bonjour le Forum,
Pour ce qui suit, j'ai mis à la fin du code, la partie "Else", pour qu'après l'ajout d'une nouvelle catégorie dans la liste ("Liste_Catégories"), s'enchaîne le tri automatique de la liste.
Hors après validation suite à une nouvelle entrée, j'ai bien le nouveau nom dans la liste, mais pas de tri.
Aucun message d'erreur.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim NewEntry As String
If Target.Cells.Count > 1 Then Exit Sub
If Target = "" Then Exit Sub
If Not Intersect(Target, Range("C6:C3000")) Is Nothing Then
NewEntry = ""
NewEntry = Target
If WorksheetFunction.CountIf(Feuil12.Range("Liste_Catégories"), NewEntry) = 0 Then
Feuil12.Range("Liste_Catégories").End(xlDown).Offset(1, 0) = NewEntry
Feuil12.Range("Liste_Catégories").Resize(Feuil12.Range("Liste_Catégories").Rows.Count + 1, 1).Name = "Liste_Catégories"
Else
Feuil12.Range("Liste_Catégories").Select
Selection.Sort Key1:=Range("A8"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End If
End If
End Sub
Merci d'avance pour le dépannage.
Quaisako
Pour ce qui suit, j'ai mis à la fin du code, la partie "Else", pour qu'après l'ajout d'une nouvelle catégorie dans la liste ("Liste_Catégories"), s'enchaîne le tri automatique de la liste.
Hors après validation suite à une nouvelle entrée, j'ai bien le nouveau nom dans la liste, mais pas de tri.
Aucun message d'erreur.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim NewEntry As String
If Target.Cells.Count > 1 Then Exit Sub
If Target = "" Then Exit Sub
If Not Intersect(Target, Range("C6:C3000")) Is Nothing Then
NewEntry = ""
NewEntry = Target
If WorksheetFunction.CountIf(Feuil12.Range("Liste_Catégories"), NewEntry) = 0 Then
Feuil12.Range("Liste_Catégories").End(xlDown).Offset(1, 0) = NewEntry
Feuil12.Range("Liste_Catégories").Resize(Feuil12.Range("Liste_Catégories").Rows.Count + 1, 1).Name = "Liste_Catégories"
Else
Feuil12.Range("Liste_Catégories").Select
Selection.Sort Key1:=Range("A8"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End If
End If
End Sub
Merci d'avance pour le dépannage.
Quaisako