Bonjour à tous,

Pour mettre en valeur une plage donnée, je renforce ses couleurs de fond comme ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
For Each Cellule In MaPlage
     Cellule.Interior.Color = Cellule.Interior.Color + 328965
Next Cellule
Ca fonctionne très bien, à condition que la plage ne soit pas trop étendue, le For Each étant assez gourmand en ressources.

J’ai donc eu l’idée de tester s’il était possible de transiter par un tableau, à la manière dont on le fait avec les données d’une plage

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
Dim MonTableau As Variant
 
MonTableau = MaPlage.Interior.Color
 
For i = LBound(MonTableau) To UBound(MonTableau)
     For j = LBound(MonTableau) To UBound(MonTableau)
          MonTableau(i, j) = MonTableau(i, j) + 328965
     Next j
Next i
 
MaPlage.Interior.Color = MonTableau

Sauf que, comme on pouvait s’y attendre, ça ne fonctionne pas…

Quelqu’un aurait une idée géniale pour optimiser les mises à jour de propriétés sans utiliser le For Each ?

Merci,