| ||||||||
Nouvel astucien | bonjour,
je suis à la recherche d'une formule par rapport à une application particulière. Je veux dans une colonne donnée réaliser un somme de valeur égale à 1 en fonction des critères qui correspond a des formats de cellule.
* cellule égale à 1 correspond à un réglement
* cellule égale à 1 et ayant fond de couleur rouge correspond
à un élève absent
* cellule égale à 1 et ayant un fond de couleur vert coorepond
à un élève présent
cela est il réalisable de part Excel ?
merci de votre réponse et pourquoi pas d'une solution
D'avance merci
Marc
| |||||||
Publicité | ||||||||
![]() | bonsoir,
je serais tenté de répondre NON ! En effet Excel est plus à l'aise pour compter des valeurs que des couleurs.
Toutefois avec VBA on peux faire bien des choses...
Il faudrait préciser un peu ton problème.
A+ | |||||||
Petit astucien | A cheval entre la formule et la macro, la fonction personnalisée est parfait pour ce genre de choses.
marcote, après avoir ouvert ton classeur, fait Ctrl+F11. Dans la liste de gauche fait un clic droit sur VBAProject(NomClasseur.xls) où "NomClasseur.xls" c'est le nom de to classeur, et sélectionne Insertion > Module.
Da la partie de droite, fait un copié collé du code ci dessous :
Function ETATELEVES(Recherche As String, ByVal Target As Range) As Byte
Dim Compteur As Byte
For Each Item In Target
If Item.Value = 1 Then
Select Case Recherche
Case "Réglés"
Compteur = Compteur + 1
Case "Absents"
If Item.Interior.ColorIndex = 3 Then Compteur = Compteur + 1
Case "Présents"
If Item.Interior.ColorIndex = 10 Then Compteur = Compteur + 1
End Select
End If
Next
ETATELEVES = Compteur
End Function
Cette fonction s'utilise comme n'importe quelle fonction d'Excel, voici sa synthaxe :
=ETATELEVES(Recherche; Plage)
Donc tu tape cette fonction à l'endroit ou tu veux une somme et pour indiquer quelle somme tu veux à la place de Rechercher tu tape un des trois mots suivant, avec les guillemets :
- "Réglés" pour les élève ayant réglé (cellules avec un 1)
- "Absents" pour compter les élèves absents (cellules rouges et avec un 1)
- "Présents" pour compter les élèves présents (cellules vertes et avec un 1)
Ensuite pour "Plage" il faut taper la plage des cellules à compter, par exemple : B2:B12 sans guillemets) pour les cellules B2 à B12. Bie nsur tu peux aussi les sélectionner avec la souris, ça marche aussi.
Deux remarques :
1) Excel n'ayant pas la notion de couleurs, elles sont représentées par des numéros, et pour Excel un numéro c'est un numéro. J'ai donc mis les numéros correspondant au rouge ordinaire et au vert ordinaire, si les couleurs que tu a choisi sont plutôt claires ou foncées elle n'auront pas le bon numéro et ça ne marchera pas il faudra donc ajuster tes couleurs.
2) Comme dans ton exemple ne fait pas mention des élèves n'ayant pas réglé, ceux-ci ne sont pas comptés parmis les présents et absents par la fonction.
Voilà c'est tout y'en a plus long à expliquer que de code lol...
A+ ;) | |||||||
Nouvel astucien | bonsoir,
merci pour vos réponses, je vais explorer VBA afin d'apporter le réponse à mon problème. Cela m'a permis un gain précieux de temps et une prise de tête [boom]
encore merci marcote[merci] | |||||||
Petit astucien | Au plaisir ;) | |||||||
|
Les bons plans du moment PC Astuces | Tous les Bons Plans | |||||||||||||||
|