Mise en forme de cellules en fonction de conditions

Bonjour à tous,

Je voudrais m'excuser pour le libellé du sujet je ne savais pas trop comment le libeller.

Je vous remercie d’abord pour l’intérêt que vous porterez à ma préoccupation qui est la suivante.

J’ai voulu faire cette programmation en VBA Excel mais je n’arrive voir fichier joint)

1- Si la valeur de la cellule D17 que j’ai renommée (Solde_Débit1) est différente de la valeur de la cellule G17 que j’ai aussi renommée (Solde_Crédit2)

Alors mettre la cellule D17 et la cellule G17 en fond gris avec le texte en bleu

Sinon ne rien faire c'est-à-dire laisser le fonds blanc et le texte en noir

2- Faire de même avec les cellules E17 et F17 c'est-à-dire

Si la valeur de la cellule F17 que j’ai renommée (Solde_Débit2) est différente de la valeur de la cellule E17 que j’ai aussi renommée (Solde_Crédit1)

Alors mettre la cellule E17 et la cellule F17 en fond rouge avec le texte en bleu

Sinon ne rien faire c'est-à-dire laisser le fonds blanc et le texte en noir

À la fin de chaque mois et que je dois recopier la feuille janvier et la renommer au mois correspondant c'est-à-dire février et ainsi de suite jusqu'à décembre.

Je signale que je veux programmer avec les nouveaux noms que j’ai donné à mes cellules c'est-à-dire Solde_Cédit1, Solde_Crédit2, ……………

J’espère avoir été précise et je joins à cet effet un fichier pour plus de compréhension.

Merci d’avance.

Bonjour,

Pour créer une MFC

* Menu Accueil

* Mise en forme conditionnelle

* Nouvelle règle

---> Utiliser une formule pour déterminer....

Pour modifier une règle

* Gérer les règles

Bien à vous

Cordialement....

Mille merci Jean-Eric pour ta réponse, elle fonctionne mais j’aurais aimé pouvoir l’avoir comme un code à écrire en VBA.

J’ai un 2e problème.

Je voudrais que lorsque les conditions sont remplies un message apparaisse dans une boite de dialogue disant : « Votre rapprochement bancaire est équilibré »

Serait-il possible ?

Si oui merci de m’aider.

Bonjour

Il y a sans doute plus court ...

Code à placer dans ThisWorkbook

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)

If [Solde_Débit1] = [Solde_Crédit2] And [Solde_Débit2] = [Solde_Crédit1] Then
MsgBox ("Votre rapprochement bancaire est équilibré")
End If

If [Solde_Débit1] = [Solde_Crédit2] Then
[Solde_Débit1].Interior.ColorIndex = xlNone
[Solde_Crédit2].Interior.ColorIndex = xlNone
[Solde_Débit1].Font.ColorIndex = xlAutomatic
[Solde_Crédit2].Font.ColorIndex = xlAutomatic
Else
[Solde_Débit1].Interior.ColorIndex = 16
[Solde_Crédit2].Interior.ColorIndex = 16
[Solde_Débit1].Font.ColorIndex = 11
[Solde_Crédit2].Font.ColorIndex = 11
End If

If [Solde_Débit2] = [Solde_Crédit1] Then
[Solde_Débit2].Interior.ColorIndex = xlNone
[Solde_Crédit1].Interior.ColorIndex = xlNone
[Solde_Débit2].Font.ColorIndex = xlAutomatic
[Solde_Crédit1].Font.ColorIndex = xlAutomatic
Else
[Solde_Débit2].Interior.ColorIndex = 3
[Solde_Crédit1].Interior.ColorIndex = 3
[Solde_Débit2].Font.ColorIndex = 11
[Solde_Crédit1].Font.ColorIndex = 11
End If

End Sub

Amicalement

Nad

Merci Nad ça marcheeeeeeeeeeee!!!!!!!

merci aussi a Jean Eric .

Bonjour,

Avec un peu de retard....

Cordialement.

Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim Plage As Range
'-------------------------------------------------------------------------------------
    Cells.FormatConditions.Delete
    Set Plage = Range("Solde_Débit1,Solde_Débit2,Solde_Crédit1,Solde_Crédit2")
    With Plage
        .Interior.ColorIndex = xlNone
        .Font.ColorIndex = xlAutomatic
    End With
'-------------------------------------------------------------------------------------
    Set Plage = Range("Solde_Débit2,Solde_Crédit1")
        With Plage.FormatConditions _
            .Add(xlExpression, , "=Solde_Débit2<>Solde_Crédit1")
                With .Interior
                    .ColorIndex = 3
                End With
                With .Font
                    .ColorIndex = 11
                End With
        End With
    Set Plage = Nothing
'-------------------------------------------------------------------------------------
     Set Plage = Range("Solde_Débit1,Solde_Crédit2")
        With Plage.FormatConditions _
            .Add(xlExpression, , "=Solde_Débit1<>Solde_Crédit2")
                With .Interior
                    .ColorIndex = 16
                End With
                With .Font
                    .ColorIndex = 11
                End With
        End With
    Set Plage = Nothing
'-------------------------------------------------------------------------------------
    If [Solde_Débit1] = [Solde_Crédit2] And [Solde_Débit2] = [Solde_Crédit1] Then
        MsgBox ("Votre rapprochement bancaire est équilibré")
    End If

End Sub
Rechercher des sujets similaires à "mise forme fonction conditions"