Comment compter les cellules avec un texte spécifique et une couleur de remplissage/police dans Excel ?
Il peut être facile pour vous de compter le nombre de cellules qui contiennent une seule condition, comme compter toutes les cellules avec un texte spécifique ou une couleur de police/remplissage. Cependant, savez-vous comment compter les cellules avec plusieurs conditions ? Par exemple, compter le nombre de cellules qui contiennent à la fois un texte spécifique et une couleur de police/remplissage. Cet article vous montrera la solution.
Compter les cellules avec un texte spécifique et une couleur de remplissage avec un code VBA
Compter les cellules avec un texte spécifique et une couleur de police avec un code VBA
Compter les cellules avec un texte spécifique et une couleur de remplissage avec un code VBA
Supposons que vous ayez un tableau comme indiqué dans la capture d'écran ci-dessous, pour compter les cellules de la colonne B en fonction du texte et de la couleur de remplissage de la cellule E2, veuillez appliquer le code VBA suivant.
1. Appuyez sur les touches Alt + F11 pour ouvrir la fenêtre Microsoft Visual Basic for Applications.
2. Dans la fenêtre Microsoft Visual Basic for Applications, cliquez sur Insertion > Module, puis copiez le code VBA ci-dessous dans la fenêtre Module.
Code VBA : Compter les cellules avec un texte spécifique et une couleur de remplissage
Sub CountFillColorValue()
'Update by Extendoffice 20180702
Dim I As Long
Dim xNum As Long
Dim Rows As Long
Dim xRgD As Range
Dim xRg, xRgS As Range
On Error Resume Next
Set xRg = Range("B2:B9")
Set xRgS = Range("E2")
Set xRgD = Application.InputBox("Please select a cell:", "KuTools for Excel", Selection.Address, , , , , 8)
If xRgD Is Nothing Then Exit Sub
xRows = xRg.Rows.Count
Set xRg = xRg(1)
xNum = 0
For I = 1 To xRows
If xRg.Offset(I - 1, 0).Interior.ColorIndex = xRgS.Interior.ColorIndex Then
If xRg.Offset(I - 1, 0).Value = xRgS.Value Then
xNum = xNum + 1
End If
End If
Next
xRgD = xNum
End Sub
Remarque : Dans le code, B2:B9 est la plage où vous compterez les cellules, E2 contient le texte et la couleur de remplissage sur lesquels vous baserez votre comptage. Vous pouvez les modifier selon vos besoins.
3. Appuyez sur la touche F5 pour exécuter le code, puis une boîte de dialogue Kutools pour Excel apparaît, veuillez sélectionner une cellule pour placer le résultat, puis cliquez sur le bouton OK. Voir la capture d'écran :
Le résultat du comptage s'affiche immédiatement dans la cellule sélectionnée.

Découvrez la magie d'Excel avec Kutools AI
- Exécution intelligente : Effectuez des opérations sur les cellules, analysez les données et créez des graphiques, le tout piloté par des commandes simples.
- Formules personnalisées : Générez des formules adaptées pour rationaliser vos flux de travail.
- Codage VBA : Écrivez et implémentez du code VBA sans effort.
- Interprétation des formules : Comprenez facilement des formules complexes.
- Traduction de texte : Surmontez les barrières linguistiques dans vos feuilles de calcul.
Compter les cellules avec un texte spécifique et une couleur de police avec un code VBA
Pour compter les cellules dans la plage B2:B9 en fonction du texte et de la couleur de police de la cellule E2, veuillez procéder comme suit.
1. Ouvrez la fenêtre Microsoft Visual Basic for Applications en appuyant sur les touches Alt + F11.
2. Dans la fenêtre Microsoft Visual Basic for Applications, cliquez sur Insertion > Module, puis copiez le code VBA ci-dessous dans la fenêtre Module.
Code VBA : Compter les cellules avec un texte spécifique et une couleur de police
Sub CountFontColorValue()
'Update by Extendoffice 20180702
Dim I As Long
Dim xNum As Long
Dim xRows As Long
Dim xRgD As Range
Dim xRg, xRgS As Range
On Error Resume Next
Set xRg = Range("B2:B9")
Set xRgS = Range("E2")
Set xRgD = Application.InputBox("Please select a cell:", "KuTools for Excel", Selection.Address, , , , , 8)
If xRgD Is Nothing Then Exit Sub
xRows = xRg.Rows.Count
Set xRg = xRg(1)
xNum = 0
For I = 1 To xRows
If xRg.Offset(I - 1, 0).Font.ColorIndex = xRgS.Font.ColorIndex Then
If xRg.Offset(I - 1, 0).Value = xRgS.Value Then
xNum = xNum + 1
End If
End If
Next
xRgD = xNum
End Sub
Remarque : Dans le code, B2:B9 est la plage où vous compterez les cellules, E2 est le critère sur lequel vous baserez votre comptage. Vous pouvez les modifier selon vos besoins.
3. Appuyez sur la touche F5 pour exécuter le code, puis une boîte de dialogue Kutools pour Excel apparaît, veuillez sélectionner une cellule pour placer le résultat, puis cliquez sur le bouton OK. Voir la capture d'écran :
Vous obtiendrez le résultat comme indiqué dans la capture d'écran ci-dessous :
Articles connexes :
- Comment compter le nombre de cellules entre deux valeurs ou dates dans Excel ?
- Comment compter les cellules avec un texte spécifique dans une sélection dans Excel ?
- Comment compter si une cellule contient un texte ou une partie de texte dans Excel ?
- Comment compter le nombre de mots spécifiques dans une cellule ou une plage de cellules dans Excel ?
Meilleurs outils de productivité pour Office
Boostez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité sans précédent. Kutools pour Excel propose plus de300 fonctionnalités avancées pour augmenter la productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office, et facilite grandement votre travail
- Activez la modification et la lecture par onglets 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é de50 %, et réduit des centaines de clics de souris pour vous chaque jour !