Sauf erreur de ma part, on programme orienté objet
Worksheet("Feuil1") est un objet de type Worksheet
Cet objet contient des sous-objets et des sous variables.
Lorsque tu écris
Worksheet("Feuil1").Range("A1")
tout est lié
Par contre lorsque tu écris:
Worksheet("Feuil1").Range(Cells(1,1))
Cells n'est pas issue de l'objet Worksheet("Feuil1"). Ne sachant pas d'où il est issu, Excel considère que c'est issu de la feuille active.
Mais en écrivant ceci:
Worksheets("Feuil1").Range(Worksheets("Feuil1").Cells(iFlag3, iFlag4), Worksheets("Feuil1").Cells(iFlag3, iFlag4 + 2))
Si on met de la couleur, la premiere partie est issue de l'objet Worksheets("Feuil1"), de même que la seconde partie, de même que la troisième!
Worksheets("Feuil1").Range(EXP1,EXP2)
EXP1 = Worksheets("Feuil1").Cells(iFlag3, iFlag4)
EXP1 = Worksheets("Feuil1").Cells(iFlag3, iFlag4)