Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

atrribuer un texte suivant couleur de fond de cellule

6 réponses
Avatar
freedo
Bonjour =E0 Toutes et =E0 Tous,
comment attribuer un texte dans une cellule en fonction de la couleur
de fond de la cellule
En fait j'ai un tableau de couleur et en fonction de la couleur
s=E9lectionn=E9e j'aimerais attribuer un texte suivant cette couleur;
Meri de suivre
Freedo

6 réponses

Avatar
JB
Bonjour,

Scénario1:

Dans un module : alt+F11 puis insertion/Module

Function couleurFond()
Application.Volatile
couleurFond = Range(Application.Caller.Address).Interior.ColorIndex
End Function


Dans une cellule: =SI(couleurfond()=3;"Ok";"")

Scénario2:

Function couleurFondTexte()
Application.Volatile
Select Case Range(Application.Caller.Address).Interior.ColorIndex
Case 3
couleurFondTexte = "Rouge"
Case 4
couleurFondTexte = "Vert"
Case 6
couleurFondTexte = "Jaune"
Case Else
couleurFondTexte = "JeSaisPas"
End Select
End Function

Dans la cellule:

=CouleurFondTexte()

http://cjoint.com/?jrlr7gfG2w

JB


On 17 sep, 10:24, freedo wrote:
Bonjour à Toutes et à Tous,
comment attribuer un texte dans une cellule en fonction de la couleur
de fond de la cellule
En fait j'ai un tableau de couleur et en fonction de la couleur
sélectionnée j'aimerais attribuer un texte suivant cette couleur;
Meri de suivre
Freedo


Avatar
JB
http://boisgontierjacques.free.fr/pages_site/procedures.htm#Caller

JB
http://boisgontierjacques.free.fr


On 17 sep, 11:18, JB wrote:
Bonjour,

Scénario1:

Dans un module : alt+F11 puis insertion/Module

Function couleurFond()
Application.Volatile
couleurFond = Range(Application.Caller.Address).Interior.ColorIndex
End Function

Dans une cellule: =SI(couleurfond()=3;"Ok";"")

Scénario2:

Function couleurFondTexte()
Application.Volatile
Select Case Range(Application.Caller.Address).Interior.ColorIndex
Case 3
couleurFondTexte = "Rouge"
Case 4
couleurFondTexte = "Vert"
Case 6
couleurFondTexte = "Jaune"
Case Else
couleurFondTexte = "JeSaisPas"
End Select
End Function

Dans la cellule:

=CouleurFondTexte()

http://cjoint.com/?jrlr7gfG2w

JB

On 17 sep, 10:24, freedo wrote:



Bonjour à Toutes et à Tous,
comment attribuer un texte dans une cellule en fonction de la couleur
de fond de la cellule
En fait j'ai un tableau de couleur et en fonction de la couleur
sélectionnée j'aimerais attribuer un texte suivant cette couleur;
Meri de suivre
Freedo- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Avatar
jps
bonjour freedo
comme ceci peut-être :

Sub test()
If ActiveCell.Interior.ColorIndex = 3 Then ActiveCell = "toto"
End Sub

jps

"freedo" a écrit dans le message de news:

Bonjour à Toutes et à Tous,
comment attribuer un texte dans une cellule en fonction de la couleur
de fond de la cellule
En fait j'ai un tableau de couleur et en fonction de la couleur
sélectionnée j'aimerais attribuer un texte suivant cette couleur;
Meri de suivre
Freedo
Avatar
lSteph
Bonjour,

Au moment où tu rentre ta fonction, ou bien lorsqu'il y a recalcul
le fait d'avoir mis volatile fait que ce sera recalculé.
Une telle fonction est donc utilisable.(cf. ex proposé par JB)

Toutefois, c'est un sujet maintes fois abordé
un changement de format n'a pas vocation à provoquer naturellement un
recalcul.
Si tu change une couleur le résultat sera faux, sauf artifice *
*(sauf à devoir alourdir le fonctionnement de l'application en forçant
par un évennement un recalcul systématique ou régulier).

Il est donc dans la plupart des cas préférable d'utiliser un critère
quelconque
texte, valeur..etc pour conditionner un calcul et par suite pour le
visuel mettre une MEFC que vouloir utiliser des couleurs pour
calculer .

(Cela peut certes être amusant mais en pratique ...)

Cordialement.

lSteph




On 17 sep, 10:24, freedo wrote:
Bonjour à Toutes et à Tous,
comment attribuer un texte dans une cellule en fonction de la couleur
de fond de la cellule
En fait j'ai un tableau de couleur et en fonction de la couleur
sélectionnée j'aimerais attribuer un texte suivant cette couleur;
Meri de suivre
Freedo


Avatar
JB
Autre solution:

http://cjoint.com/?jrmfIx75u8

Dim celluleAvant
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not IsEmpty(celluleAvant) Then
If Not Intersect(Range(celluleAvant), [B:B]) Is Nothing Then
Select Case Range(celluleAvant).Interior.ColorIndex
Case 3
Range(celluleAvant) = "rouge"
Case 6
Range(celluleAvant) = "jaune"
Case 4
Range(celluleAvant) = "Vert"
Case Else
Range(celluleAvant) = Empty
End Select
End If
End If
celluleAvant = Target.Address
End Sub

JB


On 17 sep, 11:18, JB wrote:
Bonjour,

Scénario1:

Dans un module : alt+F11 puis insertion/Module

Function couleurFond()
Application.Volatile
couleurFond = Range(Application.Caller.Address).Interior.ColorIndex
End Function

Dans une cellule: =SI(couleurfond()=3;"Ok";"")

Scénario2:

Function couleurFondTexte()
Application.Volatile
Select Case Range(Application.Caller.Address).Interior.ColorIndex
Case 3
couleurFondTexte = "Rouge"
Case 4
couleurFondTexte = "Vert"
Case 6
couleurFondTexte = "Jaune"
Case Else
couleurFondTexte = "JeSaisPas"
End Select
End Function

Dans la cellule:

=CouleurFondTexte()

http://cjoint.com/?jrlr7gfG2w

JB

On 17 sep, 10:24, freedo wrote:



Bonjour à Toutes et à Tous,
comment attribuer un texte dans une cellule en fonction de la couleur
de fond de la cellule
En fait j'ai un tableau de couleur et en fonction de la couleur
sélectionnée j'aimerais attribuer un texte suivant cette couleur;
Meri de suivre
Freedo- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Avatar
freedo
On 17 sep, 12:05, JB wrote:
Autre solution:

http://cjoint.com/?jrmfIx75u8

Dim celluleAvant
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not IsEmpty(celluleAvant) Then
If Not Intersect(Range(celluleAvant), [B:B]) Is Nothing Then
Select Case Range(celluleAvant).Interior.ColorIndex
Case 3
Range(celluleAvant) = "rouge"
Case 6
Range(celluleAvant) = "jaune"
Case 4
Range(celluleAvant) = "Vert"
Case Else
Range(celluleAvant) = Empty
End Select
End If
End If
celluleAvant = Target.Address
End Sub

JB

On 17 sep, 11:18, JB wrote:



Bonjour,

Scénario1:

Dans un module : alt+F11 puis insertion/Module

Function couleurFond()
Application.Volatile
couleurFond = Range(Application.Caller.Address).Interior.ColorIndex
End Function

Dans une cellule: =SI(couleurfond()=3;"Ok";"")

Scénario2:

Function couleurFondTexte()
Application.Volatile
Select Case Range(Application.Caller.Address).Interior.ColorIndex
Case 3
couleurFondTexte = "Rouge"
Case 4
couleurFondTexte = "Vert"
Case 6
couleurFondTexte = "Jaune"
Case Else
couleurFondTexte = "JeSaisPas"
End Select
End Function

Dans la cellule:

=CouleurFondTexte()

http://cjoint.com/?jrlr7gfG2w

JB

On 17 sep, 10:24, freedo wrote:

Bonjour à Toutes et à Tous,
comment attribuer un texte dans une cellule en fonction de la couleur
de fond de la cellule
En fait j'ai un tableau de couleur et en fonction de la couleur
sélectionnée j'aimerais attribuer un texte suivant cette couleur;
Meri de suivre
Freedo- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -


Re-bonjour à Toutes et tous,
Un grand MERCI pour toutes vos réponses
cela va metre un peu plus de couleur dans ma vie,
Freedo