L
le_bryce
Guest
Bonjour à tous et bravo pour ce forum qui est vraiment génial pour trouver des idées !!
Voilà mon souci :
j'ai une macro qui me sert à créer des onglets à partir d'une liste sur le premier onglet et d'un modèle à partir d'un 2ème onglet
Dans une itération "for" sur l'ensemble des lignes d'une colonne, les onglets sont crées correctement jusqu'à ce qu'il y ait une ligne vide dans l'onglet liste
Par contre s'il y a une ligne vide puis que la liste reprend après celle-ci ça plante ....
Voilà le code que j'ai trouvé :
J'ai un peu de mal à comprendre la syntaxe de la ligne
"For i = 3 To [B65536].End(xlUp).Row"
Sub Macro1()
Application.DisplayAlerts = False
For i = Sheets.Count To 3 Step -1
Sheets(i).Delete
Next i
Application.DisplayAlerts = True
Sheets("liste").Select
For i = 3 To [B65536].End(xlUp).Row
nom = Range("B" & i)
age = Range("C" & i)
taille = Range("D" & i)
Sheets("modèle").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = nom
With Sheets(nom)
.Range("B2") = nom
.Range("C4") = age
.Range("C5") = taille
End With
Sheets("liste").Select
Next
End Sub
Merci pour vos réponses.
Voilà mon souci :
j'ai une macro qui me sert à créer des onglets à partir d'une liste sur le premier onglet et d'un modèle à partir d'un 2ème onglet
Dans une itération "for" sur l'ensemble des lignes d'une colonne, les onglets sont crées correctement jusqu'à ce qu'il y ait une ligne vide dans l'onglet liste
Par contre s'il y a une ligne vide puis que la liste reprend après celle-ci ça plante ....
Voilà le code que j'ai trouvé :
J'ai un peu de mal à comprendre la syntaxe de la ligne
"For i = 3 To [B65536].End(xlUp).Row"
Sub Macro1()
Application.DisplayAlerts = False
For i = Sheets.Count To 3 Step -1
Sheets(i).Delete
Next i
Application.DisplayAlerts = True
Sheets("liste").Select
For i = 3 To [B65536].End(xlUp).Row
nom = Range("B" & i)
age = Range("C" & i)
taille = Range("D" & i)
Sheets("modèle").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = nom
With Sheets(nom)
.Range("B2") = nom
.Range("C4") = age
.Range("C5") = taille
End With
Sheets("liste").Select
Next
End Sub
Merci pour vos réponses.