mise en forme

  • Initiateur de la discussion David
  • Date de début
D

David

Guest
Salut le forum

Je voudrais que des lignes prennent des couleurs différentes en fonction d'une lettre dans cette ligne,et que la police change aussi de couleur.
Cela est-il possible avec VBA

Si vous avez des exemples merci d'avance

@+
David
 
B

Bernard

Guest
Bonjour David

Deux solutions dans un exemple joint :

1- La mise en forme conditionnelle sur les 50 premières lignes.
La condition est que la lettre "A" apparaisse au moins une fois dans l'une des cellules de la ligne.
La couleur est bleu mais peut être changée à souhait.

2- Par VBA une petite macro placée dans le module de la feuille qui fait la même chose.

Cordialement

Bernard
 

Pièces jointes

  • CouleurLigneMFCLettre.zip
    6.9 KB · Affichages: 5
D

David

Guest
Salut Bernard, andré

J'ai fais un petit exemple car je dois passer par VBA
J'ai 5 données différentes et avec la mise en forme conditionnelle je suis limité a 3

merci
@+
david
 

Pièces jointes

  • essai_couleur.zip
    2 KB · Affichages: 9
  • essai_couleur.zip
    2 KB · Affichages: 8
  • essai_couleur.zip
    2 KB · Affichages: 7
B

Bernard

Guest
Rebonjour David

Tes nouveaux souhaits n'ont pas grand chose à voir avec les précédents ?
Enfin !!!
Par VBA une macro qui prend en compte les six possibilités de coloration du fond et de la police.

Cordialement

Bernard
 

Pièces jointes

  • essaicouleur.zip
    8.4 KB · Affichages: 10
  • essaicouleur.zip
    8.4 KB · Affichages: 9
  • essaicouleur.zip
    8.4 KB · Affichages: 12
B

Bernard

Guest
Rebonjour David
une simplification de la macro .

Private Sub Worksheet_Change(ByVal Target As Range)
For Each C In Range("F1", "F6")
Select Case C
Case Is = "droite"
C.EntireRow.Range("A1:I1").Interior.ColorIndex = 7
Case Is = "gauche"
C.EntireRow.Range("A1:I1").Interior.ColorIndex = 4
End Select
For Each K In Range("C1", "C6")
Select Case K
Case Is = "jaune"
K.EntireRow.Range("A1", "I1").Font.ColorIndex = 6
Case Is = "bleue"
K.EntireRow.Range("A1", "I1").Font.ColorIndex = 5
Case Is = "rouge"
K.EntireRow.Range("A1", "I1").Font.ColorIndex = 3
End Select
Next K
Next C
End Sub

A+

Bernard
 

Discussions similaires

  • Question
XL pour MAC mise en forme
Réponses
2
Affichages
201

Statistiques des forums

Discussions
312 492
Messages
2 088 895
Membres
103 982
dernier inscrit
krakencolas