Aide boucle vba

Résolu/Fermé
Signaler
Messages postés
28
Date d'inscription
mardi 12 avril 2016
Statut
Membre
Dernière intervention
21 avril 2016
-
Messages postés
28
Date d'inscription
mardi 12 avril 2016
Statut
Membre
Dernière intervention
21 avril 2016
-
Bonjour,

Je me permets de vous solliciter afin de pouvoir raccourcir le code ci dessous. Il fonctionne très bien.

Merci bcp

Sheets("liste").Select

With ActiveWorkbook.ActiveSheet
.Copy After:=Worksheets(Worksheets.Count)
End With
ActiveSheet.Name = Range("J614")
ActiveSheet.Range("$F$2") = Range("J614")

With ActiveWorkbook.ActiveSheet
.Copy After:=Worksheets(Worksheets.Count)
End With
ActiveSheet.Name = Range("J615")
ActiveSheet.Range("$F$2") = Range("J615")

With ActiveWorkbook.ActiveSheet
.Copy After:=Worksheets(Worksheets.Count)
End With
ActiveSheet.Name = Range("J616")
ActiveSheet.Range("$F$2") = Range("J616")

With ActiveWorkbook.ActiveSheet
.Copy After:=Worksheets(Worksheets.Count)
End With
ActiveSheet.Name = Range("J617")
ActiveSheet.Range("$F$2") = Range("J617")

With ActiveWorkbook.ActiveSheet
.Copy After:=Worksheets(Worksheets.Count)
End With
ActiveSheet.Name = Range("J618")
ActiveSheet.Range("$F$2") = Range("J618")

With ActiveWorkbook.ActiveSheet
.Copy After:=Worksheets(Worksheets.Count)
End With
ActiveSheet.Name = Range("J619")
ActiveSheet.Range("$F$2") = Range("J619")


With ActiveWorkbook.ActiveSheet
.Copy After:=Worksheets(Worksheets.Count)
End With
ActiveSheet.Name = Range("J620")
ActiveSheet.Range("$F$2") = Range("J620")

With ActiveWorkbook.ActiveSheet
.Copy After:=Worksheets(Worksheets.Count)
End With
ActiveSheet.Name = Range("J621")
ActiveSheet.Range("$F$2") = Range("J621")

With ActiveWorkbook.ActiveSheet
.Copy After:=Worksheets(Worksheets.Count)
End With
ActiveSheet.Name = Range("J622")
ActiveSheet.Range("$F$2") = Range("J622")

With ActiveWorkbook.ActiveSheet
.Copy After:=Worksheets(Worksheets.Count)
End With
ActiveSheet.Name = Range("J623")
ActiveSheet.Range("$F$2") = Range("J623")



1 réponse

Messages postés
8554
Date d'inscription
lundi 21 décembre 2015
Statut
Membre
Dernière intervention
21 juillet 2020
628
Bonjour,

Vu que les cellules se suivent, tu peux utiliser sheets("liste").cells(ligne,colonne) dans une boucle for.
Messages postés
28
Date d'inscription
mardi 12 avril 2016
Statut
Membre
Dernière intervention
21 avril 2016

Merci Pierre,
Peux tu m'écrire tout le code stp
je te souhaite une bonne journée,
Messages postés
8554
Date d'inscription
lundi 21 décembre 2015
Statut
Membre
Dernière intervention
21 juillet 2020
628

Sheets("liste").Select
for i =614 to 623

With ActiveWorkbook.ActiveSheet
.Copy After:=Worksheets(Worksheets.Count)
End With
ActiveSheet.Name = cells(i,10).value
ActiveSheet.Range("$F$2") = cells(i,10).value

Next i
.
Messages postés
28
Date d'inscription
mardi 12 avril 2016
Statut
Membre
Dernière intervention
21 avril 2016

Merci bccccccp,
très bonne journée
Messages postés
8554
Date d'inscription
lundi 21 décembre 2015
Statut
Membre
Dernière intervention
21 juillet 2020
628
De même.
Messages postés
28
Date d'inscription
mardi 12 avril 2016
Statut
Membre
Dernière intervention
21 avril 2016

C'est encore moi :s
j'ai un 2ème code à faire de la même façon et je dois prendre les valeurs Range("I614:I630") je veux le mettre juste après le premier de la même façon,

Merci pour l'aide.