Aide boucle vba

Résolu
mmxa1995 Messages postés 28 Date d'inscription   Statut Membre Dernière intervention   -  
mmxa1995 Messages postés 28 Date d'inscription   Statut Membre Dernière intervention   -
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

Pierre1310 Messages postés 8564 Date d'inscription   Statut Membre Dernière intervention   651
 
Bonjour,

Vu que les cellules se suivent, tu peux utiliser sheets("liste").cells(ligne,colonne) dans une boucle for.
0
mmxa1995 Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
Merci Pierre,
Peux tu m'écrire tout le code stp
je te souhaite une bonne journée,
0
Pierre1310 Messages postés 8564 Date d'inscription   Statut Membre Dernière intervention   651
 

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
.
0
mmxa1995 Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
Merci bccccccp,
très bonne journée
0
Pierre1310 Messages postés 8564 Date d'inscription   Statut Membre Dernière intervention   651
 
De même.
0
mmxa1995 Messages postés 28 Date d'inscription   Statut Membre Dernière intervention  
 
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.
0