Bonjour,
je souhaite créer un onglet par valeur de la colonne A (avec les titres et les données qui vont avec bien sur).
J'ai récupéré sur le forum du code, mais j'ai un message " Cette clé est déjà associée à un élément de la collection".
Je ne pas comprends pourquoi ça coince.
Si quelqu'un(e) à la solution... Merci à elle/lui par avance.
Le code récupéré (je ne le mets pas dans le fichier joint pour éviter des messages liés à la sécurité des macros) :
Sub recopie()
Dim coll As Collection
Set coll = New Collection
For n = 2 To Range("A65536").End(xlUp).Row
On Error Resume Next
coll.Add Range("A" & n), CStr(Range("A" & n))
On Error GoTo 0
Next n
For n = 1 To coll.Count
ligne = 2
Sheets.Add.Name = coll(n)
Sheets("SOURCE").Rows(1).Copy Destination:=ActiveSheet.Rows(1)
For m = 2 To Sheets("Source").Range("A65536").End(xlUp).Row
If Sheets("SOURCE").Range("A" & m) = coll(n) Then
Sheets("SOURCE").Rows(m).Copy Destination:=ActiveSheet.Rows(ligne)
ligne = ligne + 1
End If
Next m
Next n
End Sub
je souhaite créer un onglet par valeur de la colonne A (avec les titres et les données qui vont avec bien sur).
J'ai récupéré sur le forum du code, mais j'ai un message " Cette clé est déjà associée à un élément de la collection".
Je ne pas comprends pourquoi ça coince.
Si quelqu'un(e) à la solution... Merci à elle/lui par avance.
Le code récupéré (je ne le mets pas dans le fichier joint pour éviter des messages liés à la sécurité des macros) :
Sub recopie()
Dim coll As Collection
Set coll = New Collection
For n = 2 To Range("A65536").End(xlUp).Row
On Error Resume Next
coll.Add Range("A" & n), CStr(Range("A" & n))
On Error GoTo 0
Next n
For n = 1 To coll.Count
ligne = 2
Sheets.Add.Name = coll(n)
Sheets("SOURCE").Rows(1).Copy Destination:=ActiveSheet.Rows(1)
For m = 2 To Sheets("Source").Range("A65536").End(xlUp).Row
If Sheets("SOURCE").Range("A" & m) = coll(n) Then
Sheets("SOURCE").Rows(m).Copy Destination:=ActiveSheet.Rows(ligne)
ligne = ligne + 1
End If
Next m
Next n
End Sub