plusieurs formats conditionnels de plage de cellules

Bud.boundy

XLDnaute Occasionnel
Bonjour,

Voici un exemple de ce que je souhaiterais réalisé. Si A1="B" alors je veux que la plage de cellule B1:B3 soit colorée en bleu
J'ai bien essayé en combinant avec d'anciennes macros mais je n'y arrive decidement pas... Je débute et c'est dur...
Voici un exemple rudimentaire de mes essais

Sub couleur()

If A1 = "b" Then
SelectionRange("b1:b3").Interior.ColorIndex = 41
End If
End Sub
 

Spitnolan08

XLDnaute Barbatruc
Re : plusieurs formats conditionnels de plage de cellules

Bonjour,

Si c'est en VBA que tu veux le faire (et pas en MFC) voilà comment faire :

Code:
Sub couleur()
If Range("A1") = "b" Then
   Range("b1:b3").Interior.ColorIndex = 41
End If
End Sub

Pour t'aider à créer tes premiers codes, utilise l'enregistreur automatique de macro : Outils/Macro/Nouvelle macro

Cordialement
 

Staple1600

XLDnaute Barbatruc
Re : plusieurs formats conditionnels de plage de cellules

Bonsoir


A mettre dans le code de la feuillle

(Il y a surement plus concis niveau code)

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Text = "b" Then
Range(Target.Offset(0, 1), Target.Offset(2, 1)).Interior.ColorIndex = 41
End If
End Sub
 

Cousinhub

XLDnaute Barbatruc
Re : plusieurs formats conditionnels de plage de cellules

Bonsoir bud, spit, staple....

staple, tu disais un peu plus concis : ;)

Private Sub Worksheet_Change(ByVal Target As Range)
Range(Target.Offset(0, 1), Target.Offset(2, 1)).Interior.ColorIndex = _
IIf(Target = "b", 41, xlNone)
End Sub


Bonne soirée :)
 

Bud.boundy

XLDnaute Occasionnel
Re : plusieurs formats conditionnels de plage de cellules

Merci Staple1600 et Merci bhbh,

On s'approche de la vérité puisqu'en fait je souhaiterais que pour tout "B" affiché dans la plage de celulle "A1:A20", les cellules des lignes correspondantes soint affichées en bleu "D:F"... Ex : Si A12="B" alors D12,E12 et F12 s'affichent en bleu

Merci beaucoup
 

Staple1600

XLDnaute Barbatruc
Re : plusieurs formats conditionnels de plage de cellules

Bonjour


->bhbh: un Oh admiratif pour ta concision "vbaistique"

En reprenant le code de bhbh
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim x As Long
x = Target.Row
If Not Target.Column = 1 Then Exit Sub
Range(Cells(x, 4), Cells(x, 6)).Interior.ColorIndex _
= IIf(Target = "b", 41, xlNone)
End Sub

A+

Staple
 
Dernière édition:

ya_v_ka

XLDnaute Impliqué
Re : plusieurs formats conditionnels de plage de cellules

Salut

un petit changement sur la fin... mais sans tester et sans en être sur !

En reprenant le code de bhbh
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim x As Long
x = Target.Row
If Not Target.Column = 1 Then Exit Sub
Range(Cells(x, 4), Cells(x, 6)).Interior.ColorIndex _
= IIf(Target = "b", 41, IIF(Target = "c", 5, xlNone))
End Sub

Ya'v
 

Staple1600

XLDnaute Barbatruc
Re : plusieurs formats conditionnels de plage de cellules

Bonjour


edit: j'avais oublié d'utiliser le With
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
With Target
    If Not .Column = 1 Then Exit Sub
    .Offset(0, 3).Resize(1, 3).Interior.ColorIndex _
    = IIf(Target = "b", 41, IIf(Target = "c", 3, xlNone))
End With
End Sub


En reprenant le code de ya_v_ka, reprenant le code de bhbh

et toujours dans un esprit de concision
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Target.Column = 1 Then Exit Sub
Target.Offset(0, 3).Resize(1, 3).Interior.ColorIndex _
= IIf(Target = "b", 41, IIf(Target = "c", 3, xlNone))
End Sub

ou aussi
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then Target.Offset(0, 3).Resize(1, 3).Interior.ColorIndex _
= IIf(Target = "b", 41, IIf(Target = "c", 3, xlNone))
End Sub

--->ya_v_ka: rouge = 3


A+


Staple
 
Dernière édition:

ya_v_ka

XLDnaute Impliqué
Re : plusieurs formats conditionnels de plage de cellules

Salut

Je savais que le rouge était un code entre 3 et 8, mais j'ai tenté ca au hasard, la couleur n'étant surement pas le problème principal de la question ;-) je suis déjà content d'avoir formulé le IIf correctement, je ne l'ai encore jamais utilisé...

Ya'v
 

Staple1600

XLDnaute Barbatruc
Re : plusieurs formats conditionnels de plage de cellules

Re


Bah justement en parlant du IIf
J'ai essayé

Code:
Target.Offset(0, 3).Resize(1, 3).Interior.ColorIndex _
    = IIf(Target.Column=1,[B]???[/B],IIf(Target = "b", 41, IIf(Target = "c", 3, xlNone)))

Mais ca ne fonctionne pas

???= quoi mettre ici pour que cela fonctionne


A+

Staple
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 489
Messages
2 088 855
Membres
103 976
dernier inscrit
kaizertv2001@gmailcom