Récupération valeur cellule colorée dans une plage

Bonjour Le forum

J'ai besoin d'adapter un code svp

Celui-ci cherche et pointe sur une cellule. Si celle-ci est colorée en rouge alors il me colle la valeur de la cellule dans une autre feuille

Je voudrais adapter ce code pour rechercher dans une plage la cellule colorée puis copier la valeur de la cellule coloré dans une autre feuille

Je place en pièce jointe en fichier pour exemple

D'avance je vous remercie pour votre aide et pour votre disponibilité

Bonsoir,

votre test :

If Range("B7").Interior.ColorIndex = 3 Then

Est en effet ciblé sur une seule cellule. Ce qu'il vous faut (c'est une des méthodes) c'est de faire une boucle sur une plage de cellule contiguës ou pas et de tester chaque cellule. Mais ensuite, si c'est B7, on colle où ? et si c'est D8, alors c'est au même endroit qu'on le colle ou c'est à la suite de B7 ?

Sinon pour boucler sur une plage :

Dim Plage As Range, Cel as Range
Set Plage = Activesheet.Range("B7:G13")
For  Each Cel In Plage
    If Cel.Interior.color = RGB(255,255,255) then
        ' on fait ce que l'on doit faire et ceci en fonction des réponses à mes questions
    End If
Next Cel

@ bientôt

LouReeD

Bonsoir LouReed et merci pour ton aide

en fait entre B7 et B13 il ne peut y avoir qu'une seule valeur en rouge du coup c'est cette valeur à extraire sur cette plage et à placer en A1 dans la Feuil1 , puis sur la plage c7:d13 1 seule valeur en rouge et à placer en B1 en Feuil1, puis sur la plage E7:E15 là aussi une seule valeur ...

SI je sais comment me définir la plage et récupérer la donnée en rouge je la place dans la feuil1

Bonjour le Forum

Désolé pour le retour, mais aujourd'hui il fait très mauvais et du coup je me penche sur mon PB

J'ai résolu mon problème de récupération de valeur de cellule si celle-ci est colorée par rapport à une plage, merci LouReed, mais problème supplémentaire, comment concaténer les valeurs si dans une même cellule, si dans la plage il y a plusieurs cellules colorées?

exemple si dans plage (A1:B8), les cellule A1 et B2 sont colorées alors dans cellule de destination valeur A1 + Valeur B2

Bonsoir,

concaténer ou additionner ?

Sinon il faut passer par une variable temporaire (par exemple Temp) et c'est dans cette variable que vous mettez les différents résultats de votre recherche dans la plage.
Une fois la plage scrutée, il suffit de mettre la variable Temp dans la bonne cellule résultat :

Dim Plage As Range, Cel as Range, Temp
Set Plage = Activesheet.Range("B7:G13")
For  Each Cel In Plage
    If Cel.Interior.color = RGB(255,255,255) then
        ' on fait ce que l'on doit faire et ceci en fonction des réponses à mes questions
        Temp = Temp & Cel.Value
    End If
Next Cel
Range("A1")= Temp
Temp = ""

A voir si cela peut convenir...

@ bientôt

LouReeD

Rechercher des sujets similaires à "recuperation valeur coloree plage"