Cellules vides en couleur si...

K

kaze

Guest
Bonjour à tout le forum,

J'aimerais avoir des cellules vides en couleur bleue si la cellule qui suit contient la lettre A ou la lettre B. Cela est il possible avec des formules? Je joins un fichier exemple qui sera plus explicite.
Merci d'avance à celui ou à celle qui me donnera la solution.
Olivier [file name=couleur_20060131131516.zip size=1743]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/couleur_20060131131516.zip[/file]
 

Pièces jointes

  • couleur_20060131131516.zip
    1.7 KB · Affichages: 15

Gael

XLDnaute Barbatruc
Bonjour Kaze,

Avec une MFC, tu peux écrire la formule suivante:

=OU(TROUVE('A';C2);TROUVE('B';C2))

à recopier dans toutes les cellules.

Voir exemple joint.

Si tu veux aussi que la MFC s'applique avec les lettres A et B en minuscules, remplace la fonction 'Trouve' par 'Cherche'.

@+

Gael [file name=couleur_Kaze.zip size=2397]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/couleur_Kaze.zip[/file]
 

Pièces jointes

  • couleur_Kaze.zip
    2.3 KB · Affichages: 16

porcinet82

XLDnaute Barbatruc
Salut Kaze, salut Gael,

Je ne suis pas sur d'avoir bien compris la question puisque ce que tu as mis en bleue dans ton fichier ne correspond pas au cellule dont la suivante contient A ou B mais les cellules bleues correspondent aux cellules qui contiennent A ou B.

Code:
Sub couleur()
Dim c As Range

For Each c In ActiveSheet.UsedRange
    If c DIFF '' Then
        lig = c.Row
        col = c.Column
        If InStr(1, c.Value, 'A') DIFF 0 Or InStr(1, c.Value, 'B') DIFF 0 Then
            Cells(lig, col).Interior.Color = vbBlue
        End If
    End If
Next c
End Sub

Si tu veux ce que tu as dis dans ta question , fais comme ceci:

Code:
Sub couleur_bis()
Dim c As Range

For Each c In ActiveSheet.UsedRange
    If c DIFF '' Then
        lig = c.Row
        col = c.Column
        If InStr(1, Cells(lig + 1, col).Value, 'A') DIFF 0 Or InStr(1, Cells(lig + 1, col).Value, 'B') DIFF 0 Then
            c.Interior.Color = vbBlue
        End If
    End If
Next c
End Sub

Tiens nous au courant.

@+

PS: Le forum n'acceptant pas le code différent (inférieur, supérieur), je les ais remplacé par DIFF
 
K

kaze

Guest
Bonjour à tous,

Merci Gael et Porcinet pour votre aide. Il y a eu confusion entre 'A et B' d'une part et 'A ou B' d'autre part.
Pour la Mise en Forme Conditionnelle j'ai donc divisé la formule de Gael en 2 conditions pour avoir le résultat désiré:
=OU(TROUVE('A';C2))
=OU(TROUVE('B';C2)) C'est donc OK.

La 1 ère macro de Porcinet donne un résultat correct mais avec couleur dans la colonne des données. Quelle est la modification du code à faire pour que les couleurs s'affichent sur chaque colonne précédente (ex: couleur colonne B pour les données de la colonne C)? je joins un nouveau fichier avec la macro.

Merci encore.
Amicalement.
Olivier [file name=couleur2.zip size=7000]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/couleur2.zip[/file]
 

Pièces jointes

  • couleur2.zip
    6.8 KB · Affichages: 18
  • couleur2.zip
    6.8 KB · Affichages: 17
  • couleur2.zip
    6.8 KB · Affichages: 18

Discussions similaires

Statistiques des forums

Discussions
312 310
Messages
2 087 127
Membres
103 479
dernier inscrit
Compta