Pour répondre autrement, je dirais que le with permet d'éviter, en une seule ligne, 3 occurences de "Worksheets("Feuil1")"
Worksheets("Feuil1").Range(Worksheets("Feuil1").Cells(1, i), Worksheets("Feuil1").Cells(1, i + 3)) = Array(a, b, c, d)
ça ne me parait pas forcément très lisible
Bon, perso, j'ai tendance à donner des variables courtes à mes onglets, du genre :
1 2 3
| Dim WS1 as Worksheet
Set WS1 = Worksheets("Feuil1")
WS1.Range(WS1.Cells(1, i), WS1.Cells(1, i + 3)) = Array(a, b, c, d) |
Mais la solution avec le With fonctionne parfaitement, et remplit son role de rendre la ligne plus légère, plus facile à lire. Ca n'est ni de l'ignorance, ni de la frime : c'est de l'élégance au service de la lisibilité et de la maintenabilité. Et même si il y avait eu une seule occurence sur une seule ligne, celà aurait quand même allégé ladite ligne.
Si je ne l'avais déjà fait, je mettrais un +1 à Mercatog rien que pour ce with.
Partager