Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

VBA Boucle For...Next en For each....Next

vivi4561

XLDnaute Junior
Bonjour,

J'utilise actuellement 2 boucles For .... Next que je souhaite transcrire en For each .... Next pour que le code s'exécute plus rapidement. Cependant j'ai un soucis dans la conversion du code.

Pour For ... Next j'ai (fonctionne bien):
Code:
For c = 3 To nbREF
    Range("BA" & c).Value = Application.SumIf(Range("AY3:AY" & nbligne), Range("AZ" & c).Value, Range("M3:M" & nbligne))
    For t = 1 To nbtransporteur
       ' Cells(c, 53 + t).Value = Application.WorksheetFunction.SumIfs(Range("M3:M" & nbligne), Range("AY3:AY" & nbligne), Range("AZ" & c).Value, Range("AX3:AX" & nbligne), Cells(2, 53 + t).Value)
        Cells(c, 53 + t).Value = Application.WorksheetFunction.CountIfs(Range("AY3:AY" & nbligne), Range("AZ" & c).Value, Range("AX3:AX" & nbligne), Cells(2, 53 + t).Value)
    Next
Next

Pour For each....Next (le résultat n'est pas le meme) :
Code:
For Each cbis In Range("BA3:BA" & nbREF).Cells
    cbis.Value = Application.SumIf(Range("AY3:AY" & nbligne), Range("AZ" & cbis.Row).Value, Range("M3:M" & nbligne))
    For Each tbis In Range(Cells(cbis.Row, 54), Cells(cbis.Row, 53 + nbtransporteur))
        tbis.Value = Application.WorksheetFunction.CountIfs(Range("AY3:AY" & nbligne), Range("AZ" & cbis.Row).Value, Range("AX3:AX" & nbligne), Cells(2, 54 + tbis.Column).Value)

    Next
    
Next

Savez vous d'où vient l'erreur ?


Merci d'avance,


Vince
 

CBernardT

XLDnaute Barbatruc
Re : VBA Boucle For...Next en For each....Next

Bonjour vivi4561,

Sans classeur exemple, difficile de bien saisir. Cependant, la macro semble réalisable de façon simplifiée, à voir donc...
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…