Compter des cellules dans Excel
Résolu/Fermé
A voir également:
- Compter des cellules dans Excel
- Formule excel pour additionner plusieurs cellules - Guide
- Verrouiller des cellules excel - Guide
- Liste déroulante excel - Guide
- Aller à la ligne dans une cellule excel - Guide
- Excel cellule couleur si condition texte - Guide
5 réponses
Mike-31
Messages postés
18354
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
1 janvier 2025
5 110
Modifié par Mike-31 le 30/10/2010 à 19:02
Modifié par Mike-31 le 30/10/2010 à 19:02
Salut,
La couleur rose est elle le résultat d'une mise en forme conditionnelle dans ce cas quel est la condition
ou est elle saisie manuellenement
peut on également rencontrer CB dans des cellules de couleur différente
Tu pourrais également coller ton code voir s'il est possible de le modifier
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
La couleur rose est elle le résultat d'une mise en forme conditionnelle dans ce cas quel est la condition
ou est elle saisie manuellenement
peut on également rencontrer CB dans des cellules de couleur différente
Tu pourrais également coller ton code voir s'il est possible de le modifier
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Mike-31
Messages postés
18354
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
1 janvier 2025
5 110
Modifié par Mike-31 le 30/10/2010 à 19:51
Modifié par Mike-31 le 30/10/2010 à 19:51
Re,
Tu n'as pas répondu à la première question qui est la plus importante, comment colorises tu les cellules exemple en rose (manuellement ou avec une mise en forme conditionnelle, ou encore avec un code VBA) !!!
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Tu n'as pas répondu à la première question qui est la plus importante, comment colorises tu les cellules exemple en rose (manuellement ou avec une mise en forme conditionnelle, ou encore avec un code VBA) !!!
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Salut Mike31,
Je les colorise manuellement d'aprés la palette couleur d'excel (couleur de remplissage)
Le code couleur ci-dessus était un essai, celui qui fonctionne pour le comptage des cellules d'une certaine couleur est le suivant (mille excuses):
Function SOMME_COULEUR(PlageSomme As Range, PlageCouleur As Range) As Variant
Dim Cel As Range
Dim I As Double
For Each Cel In PlageSomme
If Cel.Interior.ColorIndex = PlageCouleur.Interior.ColorIndex Then I = I + 1
Next
SOMME_COULEUR = I
End Function
@+
crimoilefort
Je les colorise manuellement d'aprés la palette couleur d'excel (couleur de remplissage)
Le code couleur ci-dessus était un essai, celui qui fonctionne pour le comptage des cellules d'une certaine couleur est le suivant (mille excuses):
Function SOMME_COULEUR(PlageSomme As Range, PlageCouleur As Range) As Variant
Dim Cel As Range
Dim I As Double
For Each Cel In PlageSomme
If Cel.Interior.ColorIndex = PlageCouleur.Interior.ColorIndex Then I = I + 1
Next
SOMME_COULEUR = I
End Function
@+
crimoilefort
Mike-31
Messages postés
18354
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
1 janvier 2025
5 110
30 oct. 2010 à 21:22
30 oct. 2010 à 21:22
Re,
Je ne t'ai pas demandé, mais avec XP tu dois certainement travailler sous Excel 2003.
Il vaut mieux passer par une macro plutôt qu'une fonction personnalisée
commence par nommer la plage que tu dois soumettre au comptage.
(ex. A2 à C50) que tu mets en surbrillance et Insertion/Nom/Définir nomme la "Tablo" ou change le nom dans le code
Ensuite clic droit sur l'onglet de feuille concerné et colles le code ci dessous
qui prendra référence sur la cellule D1, il suffira de coloriser cette cellule de la couleur à compter avec à l'intérieur le texte (ex. en D1 saisis CB et colorise D1 en rose), en E1 le nombre s'actualisera automatiquement
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim c As Range
Dim montotal As Double
Application.Volatile True
For Each c In [Tablo]
If c = [D1] And c.Interior.ColorIndex = [D1].Interior.ColorIndex Then
montotal = montotal + 1
End If
Next
[E1] = montotal
End Sub
Je ne t'ai pas demandé, mais avec XP tu dois certainement travailler sous Excel 2003.
Il vaut mieux passer par une macro plutôt qu'une fonction personnalisée
commence par nommer la plage que tu dois soumettre au comptage.
(ex. A2 à C50) que tu mets en surbrillance et Insertion/Nom/Définir nomme la "Tablo" ou change le nom dans le code
Ensuite clic droit sur l'onglet de feuille concerné et colles le code ci dessous
qui prendra référence sur la cellule D1, il suffira de coloriser cette cellule de la couleur à compter avec à l'intérieur le texte (ex. en D1 saisis CB et colorise D1 en rose), en E1 le nombre s'actualisera automatiquement
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim c As Range
Dim montotal As Double
Application.Volatile True
For Each c In [Tablo]
If c = [D1] And c.Interior.ColorIndex = [D1].Interior.ColorIndex Then
montotal = montotal + 1
End If
Next
[E1] = montotal
End Sub
Merci Mike 31,
Je viens d'essayer mais je n'arrive pas à le faire fonctionner (la première ligne de code "Private Sub Worksheet_Selectijava-script(ByVal Target As Range)" est en rouge !
La problématique est la suivante :
je dois comptabiliser 8 personnes sous deux couleurs(une pour dire le matin et l'autre pour l'aprés-midi), cela me permet d'obtenir la charge de chacun dans le jour même. Serait-il possible d'avoir un code qui permet de comptabiliser directement et de reporter ce code sous différents onglets (les mois de l'année).
J'ai changé ta première ligne de code par Private Sub Worksheet_Selectijava_script(ByVal Target As Range)", mais ça ne marche pas. Pourrais-tu m'aider pou solutionner mon problème ?
@=
chrimoilefort
Je viens d'essayer mais je n'arrive pas à le faire fonctionner (la première ligne de code "Private Sub Worksheet_Selectijava-script(ByVal Target As Range)" est en rouge !
La problématique est la suivante :
je dois comptabiliser 8 personnes sous deux couleurs(une pour dire le matin et l'autre pour l'aprés-midi), cela me permet d'obtenir la charge de chacun dans le jour même. Serait-il possible d'avoir un code qui permet de comptabiliser directement et de reporter ce code sous différents onglets (les mois de l'année).
J'ai changé ta première ligne de code par Private Sub Worksheet_Selectijava_script(ByVal Target As Range)", mais ça ne marche pas. Pourrais-tu m'aider pou solutionner mon problème ?
@=
chrimoilefort
Mike-31
Messages postés
18354
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
1 janvier 2025
5 110
Modifié par Mike-31 le 30/10/2010 à 22:23
Modifié par Mike-31 le 30/10/2010 à 22:23
Re,
Récupère avec ce lien un petit montage de 4 feuilles, sur les feuilles de 1 à 3, le total de chaque feuille avec trois possibilités et en feuille 4 les totaux des trois feuilles
https://www.cjoint.com/?0kEwtRdT5MI
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Récupère avec ce lien un petit montage de 4 feuilles, sur les feuilles de 1 à 3, le total de chaque feuille avec trois possibilités et en feuille 4 les totaux des trois feuilles
https://www.cjoint.com/?0kEwtRdT5MI
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Modifié par crimoilefort le 30/10/2010 à 19:52
Pour le code couleur (comptage des cellules couleurs):
Function SOMME_COULEUR(PlageSomme As Range, PlageCouleur As Range) As Variant
Dim Cel As Range
Dim I As Double
For Each Cel In PlageSomme
If Cel.Interior.ColorIndex = PlageCouleur.Interior.ColorIndex And WorksheetFunction.NB.SI(PlageCouleur, "CB") Then I = I + 1
Next
SOMME_COULEUR = I
End Function
Effectivement, nous pouvons rencontrer d'autres "CB" dans des cellules d'une couleur différente sur la même plage (couleur de la palette excel)
@+
Crimoilefort