comment faire Mise en forme conditionnelle à plus de 3 conditions avec 2 neurones

noptien

XLDnaute Nouveau
Bonjour tout le monde,

Avant de me faire pourrir parce que la question a été posée mille fois, je tiens à préciser que j'ai fais de longues recherches et essais sur ce problème. J'ai essayé nombre de solutions vues, ca et là, et aucunes n'ont marché. De deux choses l'une, soit certaines fonctions, objets, vb n'existent pas sous office 2003 soit, et je sens le piège, je suis un tachon embourbé avec mes deux neurones. :confused:

Pourtant mon document est simple. Je souhaite mettre en place le planning de mes activités, d'une typologie à 15 éléments environ. lorsque je saisi, a,b,c,d,..., cela symbolise mon activité, le fond et le couleur de la cellule change. J'avais bien commencé mais à la quatrième mise en forme conditionnelle, je me suis trouvé bloqué.

Ne sachant plus quoi faire, voici en pièce jointe (zip), le document.


Merci par avance pour votre aide.

Nopt
 

Pièces jointes

  • Planning_2008_v2.zip
    11.5 KB · Affichages: 88
  • Planning_2008_v2.zip
    11.5 KB · Affichages: 91
  • Planning_2008_v2.zip
    11.5 KB · Affichages: 98

Pyrof

XLDnaute Occasionnel
Re : comment faire Mise en forme conditionnelle à plus de 3 conditions avec 2 neurone

Bonjour,

Voici une méthode que j'ai utilisée :

Placer ces macros dans la feuille

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
mev_01 1, 1, 10, 1
mev_01 17, 7
End Sub
‘=======================================================
Private Sub mev_01(l1, c1, Optional l2, Optional c2)
If IsMissing(l2) Then l2 = l1
If IsMissing(c2) Then c2 = c1
Set zone1 = Range(Cells(l1, c1), Cells(l2, c2))
Dim cellule As Object
For Each cellule In zone1
With cellule.Interior
.ColorIndex = none
.Pattern = xlSolid
End With
cellule.Value = UCase(cellule.Value)
Select Case UCase(cellule.Value)
Case “DA”: cellule.Interior.Color = RGB(255, 200, 80)
Case “SE”: cellule.Interior.ColorIndex = 5
Case “PF”: cellule.NumberFormat = “””--> “”@”
End Select
Next
End Sub

La macro mev_01 (Mise En Valeur) possède 4 arguments dont 2 facultatifs.

mev_01 arg1, arg2, arg3, arg4

arg1: numéro de la première ligne de la plage à mettre en valeur
arg2: numéro le la première colonne de la plage
arg3: numéro de la dernière ligne de la plage
arg4: numéro de la dernière colonne de la plage

Par ces arguments on peut affecter une mise en valeur à une plage de cellule.
Si arg3 et arg4 ne sont pas définits, on considèrera qu’ils prennent les valeurs respectives arg1 et arg2. Dans ce cas la plage se limite à une seule cellule (mev_01 arg1, arg2).
 

noptien

XLDnaute Nouveau
Re : comment faire Mise en forme conditionnelle à plus de 3 conditions avec 2 neurone

Tout d'abord, merci pour ta réponse rapide. Par contre, j'ai une erreur qui s'affiche, il m'indique une erreur de compilation sur le première ligne. Soit il y a problème de version, soit je ne pose pas le code au bon endroit ?

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
mev_01 5, 2, 35, 15
End Sub
‘================================================= ======
Private Sub mev_01(l1, c1, Optional l2, Optional c2)
If IsMissing(l2) Then l2 = l1
If IsMissing(c2) Then c2 = c1
Set zone1 = Range(Cells(l1, c1), Cells(l2, c2))
Dim cellule As Object
For Each cellule In zone1
With cellule.Interior
.ColorIndex = none
.Pattern = xlSolid
End With
cellule.Value = UCase(cellule.Value)
Select Case UCase(cellule.Value)
Case “a”: cellule.Interior.Color = RGB(255, 200, 80)
Case “b”: cellule.Interior.ColorIndex = 5
Case “PF”: cellule.NumberFormat = “””--> “”@”
End Select
Next
End Sub

@+
 

noptien

XLDnaute Nouveau
Re : comment faire Mise en forme conditionnelle à plus de 3 conditions avec 2 neurone

Au temps pour moi, cela a l'air de fonctionner si je vire

Code:
‘================================================= ======

et

Code:
Case “PF”: cellule.NumberFormat = “””--> “”@”

Je vais regarder cela plus près.

@+
 

pierrejean

XLDnaute Barbatruc
Re : comment faire Mise en forme conditionnelle à plus de 3 conditions avec 2 neurone

bonjour neotien

Salut Pyrof

une autre version (sur worksheet_change)
 

Pièces jointes

  • PLANNING 2008.zip
    30.8 KB · Affichages: 100
  • PLANNING 2008.zip
    30.8 KB · Affichages: 107
  • PLANNING 2008.zip
    30.8 KB · Affichages: 113
Dernière édition:

noptien

XLDnaute Nouveau
Re : comment faire Mise en forme conditionnelle à plus de 3 conditions avec 2 neurone

Ok, ca marche. Par contre, chose assez surprenante, j'ai du ressaisire les quotes "", surprimer les tiennes et mettre les miennes à la place. Ne me demande pas pourquoi, mais cela s'est mis à fonctionner.

Cela peut exprimer les erreurs que j'ai rencontré en copiant collant d'autres codes.

Merci pour ton aide. Pardon ! Pour votre aide !

@+

Nopt
 
Dernière édition:

Pyrof

XLDnaute Occasionnel
Re : comment faire Mise en forme conditionnelle à plus de 3 conditions avec 2 neurone

Bonjour,

Le problème des doubles cotes est normal, le copier coller parfois transforme les doubles cotes en guillemet anglais

Bonne journée
 

Pyrof

XLDnaute Occasionnel
Re : comment faire Mise en forme conditionnelle à plus de 3 conditions avec 2 neurone

C'est encore moi et je ne suis pas très bien réveillé cotes = quotes

Salut Pierrejean, ta solution utilise la fonction mise en forme conditionnelle et est donc limité à 3 possibilités

Avec la macro, il n'y a aucune limite
 

pierrejean

XLDnaute Barbatruc
Re : comment faire Mise en forme conditionnelle à plus de 3 conditions avec 2 neurone

Re

Salut Pyrof :)

Arf !!!!

Me suis mélangé les pinceaux

Voila le bon fichier (avec macro egalement)
 

Pièces jointes

  • Planning_2008_v2.zip
    12.8 KB · Affichages: 127
  • Planning_2008_v2.zip
    12.8 KB · Affichages: 123
  • Planning_2008_v2.zip
    12.8 KB · Affichages: 122

noptien

XLDnaute Nouveau
Re : comment faire Mise en forme conditionnelle à plus de 3 conditions avec 2 neurone

Super Pierre Jean,

ta version est nickel, non pas que l'autre ne fonctionne pas mais opérant un réfraichissemnt en continu et sur toute la zone, elle prends pas mal de ressources.

Merci à vous tous, j'ai réussi à créer le doc que je voulais.:)

@+

Noptien
 

noptien

XLDnaute Nouveau
Re : comment faire Mise en forme conditionnelle à plus de 3 conditions avec 2 neurone

Salut tout le monde,

Bon, je reviens un peu sur mon doc, histoire de le peaufiner un peu. J'ai fait 2 constats qui sont un peu rédhibitoire.

Avec la méthode de Pierre-Jean, lorsque je crée des formules qui contiennent les valeurs "A", "B" (puisque je fais des calculs de nombre de jours grâce à la fonction NB.SI = "A"), alors les cellules contenant ces formules se colorisent aussi, ce que je ne souhaite pas. De plus, et cela est vrai pour les deux méthodes proposées, les résultats des formules n'agissent pas en direct. Je dois les rafraichir à la main en retournant dans la barre de formule et en faisant "Entrée".

Est-il possible de supprimer ces contraintes ? :confused:

Merci pour votre aide.

Noptien
 

Discussions similaires

Statistiques des forums

Discussions
312 505
Messages
2 089 070
Membres
104 019
dernier inscrit
BenKmc