For each ne peut itérer que sur une collection ou un tableau_ erreur

BOnjour à tous,

J'ai un problème sur mon code suivant :

Sub test_mef()

Dim cell As Range

Dim MaPlage As Long

StartRange = "A21"

EndRange = "AL21"

Set a = Range(StartRange, Range(StartRange).End(xlDown))

Set b = Range(EndRange, Range(EndRange).End(xlDown))

Range(a, b).Select

MaPlage = Range(a, b)

For Each cell In MaPlage

If cell.Value = "" Then

With Selection.Interior

.Pattern = xlSolid

.PatternColorIndex = xlAutomatic

.ThemeColor = xlThemeColorAccent4

.TintAndShade = 0.599993896298105

.PatternTintAndShade = 0

End With

End If

Next

End Sub

j'espérai qu'il fonctionnerai en définissant ma nouvelle plage MaPlage (=je parle de la plage range(a,b) ) mais il me sort une erreur et bien que je comprends pas :

2020 04 22 14 03 20 microsoft visual basic pour applications

une idée?

merci beaucoup ^^

Bonjour,

Tu définis MaPlage As Long, donc un nombre...

Et cell As Range

On ne peut donc faire un For Each "cellule" In "nombre"....

Si tu définis MaPlage As Range, et que tu la définis ainsi :

Set MaPlage = Range(a, b)

Peut-être?

Salut cousinhub

oui j'ai compris, il va être temps d'aller voir les cours pour débutant XD

je te confirme que ça fonctionne, le script s'execute jusqu'à la fin, seul hic c'est que ça à coloré toute les cellules au lieu de celle qui sont vide..

erreur de débutant, je vais corriger ^^

un grand merci pour la solution et l'explication

Rechercher des sujets similaires à "each iterer que collection tableau erreur"