Astuce: Les autres langues sont Google-Traduction. Vous pouvez visiter le English version de ce lien.
Se connecter
x
or
x
x
S'enregistrer
x

or

Comment changer la couleur de la zone de texte en fonction de la valeur dans Excel?

Dans Excel, nous pouvons appliquer la fonction Mise en forme conditionnelle pour modifier la couleur d'arrière-plan en fonction de la valeur de la cellule, mais dans cet article, je vais parler de la modification de la couleur de la zone de texte.

Changer la couleur de la zone de texte en fonction de la valeur de la cellule avec le code VBA

Changer la couleur de la zone de texte en fonction de la valeur dans la zone de texte avec le code VBA


flèche bleue droite bulle Changer la couleur de la zone de texte en fonction de la valeur de la cellule avec le code VBA


Disons que si la valeur de cellule dans A1 est supérieure à la valeur de cellule dans B1, je veux que la zone de texte soit remplie de couleur rouge, au contraire, la zone de texte doit être remplie de couleur jaune. S'il vous plaît accomplir ce travail avec les étapes suivantes:

1. Insérer une zone de texte en cliquant Développeur > insérer > Zone de texte (contrôle ActiveX), puis dessinez une zone de texte, voir capture d'écran:

Couleur de la zone de texte doc basée sur la valeur 1

2. Puis faites un clic droit sur la zone de texte, et sélectionnez Voir le code à partir du menu contextuel pour ouvrir le Microsoft Visual Basic pour applications fenêtre, puis remplacez le code d'origine par le code VBA suivant dans le module vide:

Code VBA: modifiez la couleur de la zone de texte en fonction des valeurs de la cellule:

Private Sub TextBox1_Change()
    If ActiveSheet.Range("A1").Value > ActiveSheet.Range("B1").Value Then
        Me.TextBox1.BackColor = vbRed
    Else
        Me.TextBox1.BackColor = vbYellow
    End If
End Sub

Couleur de la zone de texte doc basée sur la valeur 2

Note: Dans le code ci-dessus, TextBox1 est le nom de la zone de texte que vous avez inséré, A1 et B1 sont les deux cellules que vous voulez changer la couleur de la zone de texte en fonction, s'il vous plaît les changer à votre besoin.

3. Ensuite, enregistrez et fermez la fenêtre de code, et quittez Mode de conception, maintenant, si la cellule A1 est supérieure à B1, lorsque vous saisissez du texte dans la zone de texte, elle sera remplie de couleur rouge, et si A1 est inférieure à B1, elle sera remplie de couleur jaune lors de la saisie de la valeur dans la zone de texte. voir capture d'écran:

Couleur de la zone de texte doc basée sur la valeur 3


flèche bleue droite bulle Changer la couleur de la zone de texte en fonction de la valeur dans la zone de texte avec le code VBA

Si vous souhaitez modifier la couleur de la zone de texte en fonction de la valeur de la zone de texte, par exemple, lorsque 1 et 10 sont affichés dans la zone de texte, la couleur de la zone de texte est rouge, la couleur de la zone de texte est verte. autres valeurs, la couleur de la zone de texte est jaune. Pour faire face à cette tâche, veuillez appliquer le code VBA ci-dessous.

1. Après avoir inséré une zone de texte, faites un clic droit dessus et sélectionnez Voir le code à partir du menu contextuel pour ouvrir le Microsoft Visual Basic pour applications fenêtre, puis remplacez le code d'origine par le code VBA suivant dans le module vide:

Code VBA: modifiez la couleur de la zone de texte en fonction de la valeur dans la zone de texte:

Private Sub TextBox1_Change()
    On Error Resume Next
    Select Case TextBox1.Value
        Case 1 To 10:
            TextBox1.BackColor = vbRed
        Case 11 To 20:
            TextBox1.BackColor = vbGreen
        Case Else:
            TextBox1.BackColor = vbYellow
    End Select
End Sub

Couleur de la zone de texte doc basée sur la valeur 4

Note: Dans le code ci-dessus, Textbox1 est le nom de la zone de texte dans laquelle vous êtes inséré et vous pouvez modifier les valeurs et la couleur d'arrière-plan du code dans la vôtre.

2. Ensuite, enregistrez et fermez la fenêtre de code, et quittez Mode de conception, maintenant, si vous entrez la valeur entre 1 et 10 dans la zone de texte, sa couleur d'arrière-plan deviendra rouge, la valeur entre 11 et 20, la couleur d'arrière-plan de la zone de texte deviendra verte, les autres valeurs deviendront jaunes.

Couleur de la zone de texte doc basée sur la valeur 5


Articles Liés:

Comment insérer une image dans une zone de texte?

Comment définir une valeur par défaut dans une zone de texte?

Comment autoriser uniquement les nombres à entrer dans la zone de texte?

Comment appliquer la vérification orthographique dans la zone de texte?



Outils de productivité recommandés

Office Tab

étoile d'or1 Apportez des onglets pratiques à Excel et à d'autres logiciels Office, tout comme Chrome, Firefox et Internet Explorer.

Kutools for Excel

étoile d'or1 Incroyable! Augmentez votre productivité dans les minutes 5. Ne nécessite pas de compétences particulières, économisez deux heures par jour!

étoile d'or1 300 Nouvelles fonctionnalités pour Excel, rendent Excel facile et puissant:

  • Fusionner des cellules / lignes / colonnes sans perdre de données.
  • Combiner et consolider plusieurs feuilles et classeurs.
  • Comparez les gammes, copiez plusieurs gammes, convertissez le texte en date, l'unité et la conversion de devise.
  • Compter par couleurs, sous-totaux de recherche, tri avancé et super filtre,
  • Plus Sélectionner / Insérer / Supprimer / Texte / Format / Lier / Commenter / Classeurs / Feuilles de calcul Outils ...

Capture d'écran de Kutools pour Excel

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Stefan · 1 years ago
    Nevermind, I figured it out. Instead of making the event which triggers the change "Textbox1_GotFocus()", I made it "Worksheet_SelectionChange(ByVal Target As Range)". Now any time the value in one of the cells changes, the textbox color changes automatically.
  • To post as a guest, your comment is unpublished.
    Stefan · 1 years ago
    For me, when trying to change the textbox color value based on two cell values, the textbox only updates if you type something into the textbox. I need it to update automatically. Guess I'll just have to learn VBA to figure out why.
  • To post as a guest, your comment is unpublished.
    Justin · 2 years ago
    Can someone provide an example workbook so I can see this working? I keep trying but to no avail. Thanks