gaouul
XLDnaute Nouveau
Bonjour,
Je bute depuis cette après midi sur un petit problème de boucle.
Alors :
J'ai une liste contenue dans une feuille (Listing feuille) en colonne B.
Je dois contrôler que pour chaque cellule de ma liste si la feuille existe ou pas.
Si la feuille existe alors ne rien faire sinon créer la feuille et donner le nom de ma cellule a cette feuille.
J'ai écrit le code ci-joint et j'arrive a créer ma première feuille, la renommer proprement avec les info de la première cellule de ma liste. La seconde page ce crée et la c le drame... le debugger ce lance... et je ne comprend pas pourquoi.
Ci-joint le code utilisé :
Si j'inverse mes boucles dans mon code ca me crée bien toutes mes pages mais ca m'en rajoute quand même une à la fin et me met un message d'erreur.
Pouvez vous m'aider SVP?
Merci.
Je bute depuis cette après midi sur un petit problème de boucle.
Alors :
J'ai une liste contenue dans une feuille (Listing feuille) en colonne B.
Je dois contrôler que pour chaque cellule de ma liste si la feuille existe ou pas.
Si la feuille existe alors ne rien faire sinon créer la feuille et donner le nom de ma cellule a cette feuille.
J'ai écrit le code ci-joint et j'arrive a créer ma première feuille, la renommer proprement avec les info de la première cellule de ma liste. La seconde page ce crée et la c le drame... le debugger ce lance... et je ne comprend pas pourquoi.
Ci-joint le code utilisé :
VB:
Sub creation_feuille
Dim mapl As Range, cel As Range, fe As Worksheet
Set mapl = Sheets("Listing onglet").Range("B1:B" & Range("A" & Cells.Rows.Count).End(xlUp).Row)
ActiveWorkbook.Names.Add Name:="Liste", RefersTo:=mapl
For Each cel In mapl
For Each fe in ThisWorkbook.Sheets
If fe.Name = cel.Text Then
Else
Sheets.Add After:=Sheets("Acceuil")
ActiveSheet.Name = cel.Text
End If
Next fe
Next cel
End sub
Si j'inverse mes boucles dans mon code ca me crée bien toutes mes pages mais ca m'en rajoute quand même une à la fin et me met un message d'erreur.
VB:
Sub creation_feuille
Dim mapl As Range, cel As Range, fe As Worksheet
Set mapl = Sheets("Listing onglet").Range("B1:B" & Range("A" & Cells.Rows.Count).End(xlUp).Row)
ActiveWorkbook.Names.Add Name:="Liste", RefersTo:=mapl
For Each fe In ThisWorkbook.Sheets
For Each cel In mapl
If fe.Name = cel.Text Then
Else
Sheets.Add After:=Sheets("Acceuil")
ActiveSheet.Name = cel.Text
End If
Next cel
Next fe
End sub
Pouvez vous m'aider SVP?
Merci.
Dernière édition: