Code VBA en erreur pour création d'onglets selon critères

LPandre

XLDnaute Impliqué
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
 

Pièces jointes

  • onglets.xls
    15 KB · Affichages: 21
  • onglets.xls
    15 KB · Affichages: 32
  • onglets.xls
    15 KB · Affichages: 28

Bebere

XLDnaute Barbatruc
Re : Code VBA en erreur pour création d'onglets selon critères

bonjour Lpandre
de mon côté le code est bon
essaye avec ce code
dans menu outils,références microsoft scripting runtime doit être coché
Code:
Sub recopie()
Dim d As New Dictionary

For n = 2 To Range("A65536").End(xlUp).Row
d(Range("A" & n).Value) = Range("A" & n).Value
Next n
For Each Item In d.Items
ligne = 2
Sheets.Add.Name = Item
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) = Item Then
Sheets("SOURCE").Rows(m).Copy Destination:=ActiveSheet.Rows(ligne)
ligne = ligne + 1
End If
Next m
Next Item
 

Discussions similaires

Statistiques des forums

Discussions
312 203
Messages
2 086 197
Membres
103 153
dernier inscrit
SamirN