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?


Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe Créer une liste de diffusion et envoyer des emails ...
  • Super Formula Bar (éditez facilement plusieurs lignes de texte et de formule); Disposition de lecture (facilement lire et éditer un grand nombre de cellules); Coller à la gamme filtrée...
  • Fusionner les cellules / rangées / colonnes sans perdre de données; Contenu des cellules divisées; Combiner les lignes / colonnes en double... Prévenir les cellules en double; Comparer les plages...
  • Sélectionnez Dupliquer ou Unique Des rangées; Sélectionnez les lignes vierges (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux cahiers d'exercices; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de la formule; Créer automatiquement des références à plusieurs feuilles; Insérer des balles, Cases à cocher et plus ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre contenu de cellules et commentaires...
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial en gras, en italique ...
  • Combinaison de classeurs et de feuilles de calcul; Fusionner les tables en fonction des colonnes clés; Fractionner les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDF...
  • Plus que de puissantes fonctionnalités 300. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Fonctionnalités complètes Essai gratuit du jour 30.
kte tab 201905

Office Tab apporte une interface à onglets à Office et simplifie grandement votre travail

  • Activer l'édition par onglets et la lecture dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit le nombre de clics de souris pour vous chaque jour!
fond officetab
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