Trouver la couleur de fond d'une cellule

Bonjour à tous / toutes

Voici mon projet..Dans mon fichier, vous pouvez voir que j'ai une formule qui me permet de trouver la couleur de fond d'une cellule. La formule fonctionne correctement a condition que le parametre qui désigne la cellule soit inscrit en dur.

Exemple : =Couleur(Feuil2!B10) ) marche car B10 est écrit en dur..

Dans mon projet pour trouver B10, j'utilise une formule "B" &EQUIV(Valeur à trouver;Feuil2!$A$2:$A$5;0)+1

J'obtiens donc je pense une chaîne de caractère..Si j'ai bien compris la formule =Couleur(Feuil2!B10) , la valeur B10 est un "Range"

Pour que ma formule fonctionne , il faudrait donc transformer ma chaine de caractère en Range..Du moins ,je crois..

Est ce qu'il est possible de transformer le résultat de ma formule ("B" &EQUIV.........) en un range ?

Je met en pièce jointe mon projet....

Merci d'avance à tous ceux / celles qui pourront m'aider..

Cordialement

Bonjour,

on a pas le code de ta fonction, mais de ce que je vois:

Feuil2!"B" &EQUIV(Valeur à trouver;Feuil2!$A$2:$A$5;0)+1

Feuil2!"B" & EQUIV renverra bien uniquement du texte, tu devrais utiliser la fonction INDIRECT pour renvoyer une cellule:

=Couleur(INDIRECT("Feuil2!B" &EQUIV(A2;Feuil2!$A$2:$A$5;0)+1))

Bonjour Ausecour,

Merci beaucoup c'est exactement ce que j'avais besoin..

Désolé pour le fichier en pièce jointe , j'avais pas mis la bonne extension..

Dans mon fichier , j'ai ce bout de code qui me permet de récupérer la couleur d'une cellule

Function Couleur(CL As Range) As Long

Application.Volatile

Couleur = CL.Interior.ColorIndex

End Function

Je voudrais également avoir la possibilité de choisir le fond de couleur que je désire mettre dans une cellule.

As tu une idée de comment modifier ce bout de code pour avoir cette nouvelle fonction, stp ?

Ca donnerai un truc comme ca..

Function CouleurDeFond (CL As Range) As Long

Application.Volatile

CouleurDeFond = CL.Interior.ColorIndex

End Function

Merci d'avance pour ton aide

Cordialement

Slt,

a tester....

Function CouleurDeFond (CL As Range) As Long
Application.Volatile
CouleurDeFond = CL.Font.Color
End Function

Bonjour,

une fonction est prévue pour retourner une valeur et seulement ça.

Comme a=sin(x)

Elle ne modifie pas son environnement, il faut utiliser un Sub.

eric

Rechercher des sujets similaires à "trouver couleur fond"