Re : MFC avec 4 conditions
Bonjour,
Voici une autre solution:
On connaît la mise en forme conditionnelle d’Excel. Mais celle-ci est limité à 3 conditions.
Pour palier cette limite voici une solution :
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).