Private Sub Worksheet_Change(ByVal Target As Range)
Application.DisplayAlerts = False
If Target.Column > 9 Then Exit Sub
For Each sh In Worksheets
If Application.CountIf(Range("I1", [I65536].End(3)), sh.Name) = 0 Then
If Left(sh.Name, 4) <> ">" Then sh.Delete
End If
Next
'If Left(sh.Name, 5) = "Feuil" Then Exit Sub
Application.DisplayAlerts = True
For Each c In Range("I1", [I65000].End(3))
On Error Resume Next
Z = Sheets(c.Value).[I1]
If Err > 0 And c.Value <> "" Then Worksheets.Add after:=Worksheets(Worksheets.Count): ActiveSheet.Name = c.Value
Next
Sheets(1).Select
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("A2")) Is Nothing Then
Range("A2").Copy Range("E65000").End(xlUp)(2)
'--- tri ---
Range("e1:e" & [e65000].End(xlUp).Row).Sort Key1:=Range("e1"), Order1:=xlAscending, _
Header:=xlNo, OrderCustom:=1, MatchCase:=False
'--- efface A2 ---
Application.EnableEvents = False
Range("A2").ClearContents
Application.EnableEvents = True
End If
End Sub