Macro mise en forme conditionnel

Résolu
Bonjour,

J'ai un tableau avec différentes valeurs à l'intérieur et j'aimerais créer une macro pour modifier la taille de la police selon la valeur que contient une cellule et que celle ci s'exécute automatiquement lorsque je saisie une valeur dans ce tableau. Vu que je suis novice en vba je ne sais pas trop comment mis prendre.

Merci d'avance pour vos réponses.
Configuration: Windows Vista Internet Explorer 7.0

7 réponses

  1. Bonjour,
    Tu n'as pas besoin de Visual Basic Application pour faire ce que tu souhaites, il suffit simplement de régler la mise en forme automatique sur les cellules impactées par les calculs et définir que si la valeur ...est celle que tu veux alors format police, bordure, etc, et ce pour trois condition plus celle par défaut (le format sans aucune mise en forme conditionnelle).
    0
    1. Justement avec mise en forme conditionnel je ne peux pas changer la taille de la police, c'est pour sa que je veux créer une macro.
      0
      1. Contributeur
        Bonjour,
        Pour l'exemple...
        La colonne testée est la B
        le contenu de la cellule est la grandeur que l'ont veux donner à la police.
        A adapter, tu ne donne pas plus de renseignement.
        Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        Static AncCel As Variant
        Static AncAdd As String
            If Target.Count > 1 Then Exit Sub
                If AncAdd <> "" Then
                    If Range(AncAdd).Column = 2 And Range(AncAdd) <> AncCel Then
                        Range(AncAdd).Font.Size = Range(AncAdd)
                    End If
                End If
            AncAdd = Target.Address
            AncCel = Target.Value2
        End Sub

        A coller dans le module de la feuille.
        A+
        0
        1. Merci pour ta réponse lermitte c'est presque sa. En fait ce que je voudrais faire c'est : par exemple j'ai un tableau de A1 à E5 et si dans une de ces cellules je tape "oui" alors la taille de la police sera de 8 et si dans une autre cellule je tape "non" alors la taille sera de 12.
          J'espère être assez claire.
          0
          1. Contributeur
            L'avantage de donner un maximum de renseignement dans la question est que la solution est plus rapidement conforme à ce que tu veux,..
            De plus, si tu comprend le code ce n'est pas difficile de l'adapter.
            Enfin... La rectification.
            Private Sub Worksheet_SelectionChange(ByVal Target As Range)
            Static AncCel As Variant
            Static AncAdd As String
                If Target.Count > 1 Then Exit Sub
                    If AncAdd <> "" Then
                        If Not Intersect(Range(AncAdd), Range("A1:E5")) Is Nothing Then
                            If UCase(Range(AncAdd)) = "OUI" Then
                                Range(AncAdd).Font.Size = 8
                            ElseIf UCase(Range(AncAdd)) = "NON" Then
                                Range(AncAdd).Font.Size = 12
                            End If
                        End If
                    End If
                AncAdd = Target.Address
                AncCel = Target.Value2
            End Sub

            A+
            0
            1. Merci beaucoup lermite c'est tout à fait ce que je voulais je te remercie ce code marche parfaitement.
              0
              1. Bonjour,
                Police, police !
                0
                1. Contributeur
                  ????
                  0
                2. @lermite222Bonjour,
                  Je n'ai lu la question : elle portait sur la mise en forme conditionnelle de la police....c'est vrai que l'on se demande pourquoi ce menu n'y est pas accessible en même temps...que l'intérêt de changer conditionnellement la police...voilà, désolé !
                  0