non capisco proprio dove sia il problema.

In un file excel ho tre fogli, Foglio1, Foglio2 e Foglio3

In Foglio3 ho valorizzato l'evento Worksheet_Change

Se scrivo:

For Each casella In Worksheets(2).Range("H2", "H21")

funziona perfettamente.

Se scrivo (copiando da un codice funzionante, in altri contesti)
For Each casella In Range([Foglio2!H2], [Foglio2!H2].End(xlDown))

va sempre in errore

se servisse posso mandare il codice completo


ps.
va in errore anche con questo codice
MsgBox Worksheets(2).Cells(1, 1)).Count