OVH Cloud OVH Cloud

Forme conditionnnelle

5 réponses
Avatar
Patrice
Bonjour,

La mise en forme conditionnelle est limté à 3 critères. J'aimerais pouvoir
associer une couleur à la cellule pour chaque lettre de l'alphabet.

Si valeur cellule = "A" alors rouge
Si valeur cellule = "B" alors bleu
ect.

Existe-t-il un moyen de faire ça?

Merci

Patrice

5 réponses

Avatar
Daniel
Bonjour.
Mets la macro suivante dans le code de la feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Alphabet As String, Var
Alphabet = "a b c d e f g h i j k l m n o p q r s t u v w x y z"
Tablo = Split(Alphabet)
Var = Application.Match(LCase(Target.Value), Tablo, 0)
If IsNumeric(Var) Then
Target.Interior.ColorIndex = Var
End If
End Sub

Cordialement.
Daniel
"Patrice" a écrit dans le message de
news:
Bonjour,

La mise en forme conditionnelle est limté à 3 critères. J'aimerais pouvoir
associer une couleur à la cellule pour chaque lettre de l'alphabet.

Si valeur cellule = "A" alors rouge
Si valeur cellule = "B" alors bleu
ect.

Existe-t-il un moyen de faire ça?

Merci

Patrice


Avatar
Jacky
Bonsoir,
Avec la sélection en cours
Ceci par exemple:
'-------
Sub jj()
For Each c In Selection 'ou range ("plage")***A définir***
For i = 65 To 90
If UCase(c) = Chr(i) Then
c.Interior.ColorIndex = i - 35
End If
Next
Next
End Sub
'------------
Salutations
JJ

"Patrice" a écrit dans le message de
news:
Bonjour,

La mise en forme conditionnelle est limté à 3 critères. J'aimerais pouvoir
associer une couleur à la cellule pour chaque lettre de l'alphabet.

Si valeur cellule = "A" alors rouge
Si valeur cellule = "B" alors bleu
ect.

Existe-t-il un moyen de faire ça?

Merci

Patrice


Avatar
isabelle
bonjour Patrice,

si une solution macro te convient, voici un exemple, tu peut mettre autant de "Case" désiré.

Private Sub Worksheet_Change(ByVal Target As Range)
Set isect = Application.Intersect(Target, Range("A1:A10")) 'plage à adapter
If Not isect Is Nothing Then
Target.Interior.ColorIndex = xlNone
With Target.Interior
Select Case LCase(Target)
Case "a": .ColorIndex = 4
Case "b": .ColorIndex = 12
Case "c": .ColorIndex = 33
Case "d": .ColorIndex = 62
Case "e": .ColorIndex = 24
End Select
End With
End If
End Sub


isabelle


Bonjour,

La mise en forme conditionnelle est limté à 3 critères. J'aimerais pouvoir
associer une couleur à la cellule pour chaque lettre de l'alphabet.

Si valeur cellule = "A" alors rouge
Si valeur cellule = "B" alors bleu
ect.

Existe-t-il un moyen de faire ça?

Merci

Patrice


Avatar
Patrice
Merci beaucoup à tous les deux.

J'ai dû enlever "Option Explicit" au début du module car je ne savait pas de
quel type déclarer la variable "isect"

Patrice


bonjour Patrice,

si une solution macro te convient, voici un exemple, tu peut mettre autant de "Case" désiré.

Private Sub Worksheet_Change(ByVal Target As Range)
Set isect = Application.Intersect(Target, Range("A1:A10")) 'plage à adapter
If Not isect Is Nothing Then
Target.Interior.ColorIndex = xlNone
With Target.Interior
Select Case LCase(Target)
Case "a": .ColorIndex = 4
Case "b": .ColorIndex = 12
Case "c": .ColorIndex = 33
Case "d": .ColorIndex = 62
Case "e": .ColorIndex = 24
End Select
End With
End If
End Sub


isabelle


Bonjour,

La mise en forme conditionnelle est limté à 3 critères. J'aimerais pouvoir
associer une couleur à la cellule pour chaque lettre de l'alphabet.

Si valeur cellule = "A" alors rouge
Si valeur cellule = "B" alors bleu
ect.

Existe-t-il un moyen de faire ça?

Merci

Patrice





Avatar
isabelle
Dim isect As Range

isabelle

Merci beaucoup à tous les deux.

J'ai dû enlever "Option Explicit" au début du module car je ne savait pas de
quel type déclarer la variable "isect"

Patrice



bonjour Patrice,

si une solution macro te convient, voici un exemple, tu peut mettre autant de "Case" désiré.

Private Sub Worksheet_Change(ByVal Target As Range)
Set isect = Application.Intersect(Target, Range("A1:A10")) 'plage à adapter
If Not isect Is Nothing Then
Target.Interior.ColorIndex = xlNone
With Target.Interior
Select Case LCase(Target)
Case "a": .ColorIndex = 4
Case "b": .ColorIndex = 12
Case "c": .ColorIndex = 33
Case "d": .ColorIndex = 62
Case "e": .ColorIndex = 24
End Select
End With
End If
End Sub


isabelle



Bonjour,

La mise en forme conditionnelle est limté à 3 critères. J'aimerais pouvoir
associer une couleur à la cellule pour chaque lettre de l'alphabet.

Si valeur cellule = "A" alors rouge
Si valeur cellule = "B" alors bleu
ect.

Existe-t-il un moyen de faire ça?

Merci

Patrice