formule de comptage!!!

C

C@thy

Guest
Bonjour,

puis-je vous demander un coup de main sur le problème suivant :

je voudrais savoir combien j'ai d'agents qui ont le code "C53".

là où ça se complique, c'est que j'ai une fiche par agent, et que sur chaque onglet, dans la cellule D2 se trouve ce fameux code, donc je veux savoir combien j'ai d'onglets comportant ce code en D2.

NB.SI ne fonctionne pas sur une plage comprise sur plusieursd feuilles.

Merci pour votre aide.

C@thy
BipBip.gif
 
J

jmps

Guest
Bonsoir C@thy,

Par formule, je ne sais pas faire mais si ça peut t'aider voici un code VBA que tu devras adapter en fonction de ce que tu veux faire.

For Each feuille In Worksheets
  If Sheets(feuille.Name).Range("D1").Value = "C53" Then
    Sheets("Feuil1").Range("B1").Value = Sheets("Feuil1").Range("B1").Value + 1
  End If
Next f

Ce code te compte les feuilles contenant C53 en D2 et place le résultat en B1 de la Feuil1.

Si tu as besoin d'aide n'hésite pas.

Bonne soirée.

José
 
P

Pascal76

Guest
Salut José

J'arrive sur ce fil par celui du zop et comme tu dis ça sent le zop car dans ton code tu parles de la cellule D1 (If Sheets(feuille.Name).Range("D1").Value = "C53" Then) et dans ton explication tu dis que cela compte la D2



Pascal
 
@

@+Thierry

Guest
=> DEMO UserForm recherche multifeuille généré en VBA à la volée en RunTime...

Bonsoir C@thy, José, Pascal, le Forum

Moi je vais vous "Zopper" un peu tous les deux sur ce coup là !!! Non c'est pas vrai, la solution de José est amplement suffisante...

Mais n'ai je pas un "+" dans mon pseudo !!!!

Voici une démo avec un UserForm généré à la volée en RunTime... En fait c'est une adaptation d'un truc que j'avais fait pour MichelXLD il y a un bail...

Et puis cette fameuse crèpe valait bien un petit UserForm !!!

Par contre si comme l'indique le sujet de C@thy... si c'est absolument en formule, je laisse la main car on est tous hors sujet !! lol

Bonne soirée
@+Thierry
 

Pièces jointes

  • USF_Searcher_Auto_ListBox_RunTime.zip
    18.5 KB · Affichages: 36
C

C@thy

Guest
Merci à vous tous, vous êtes super gentils, mais il me faut une formule de calcul, pas une macro. (screugneugneu!!!)

C'est pour des utilisateurs sur les postes desquels on a mis sécurité haute pour être sûrs qu'aucune macro ne s'exécute... alors, j'sais pas comment faire (En plus, ils ne savent pas cliquer sur un bouton pour lancer une macro, il faut que le résultat s'inscrive tout seul dans la cellule et pis c'est tout, je pense qu'une macrofonction ne passerait pas non plus, n'est-ce pas???...dommage, ce serait bien pratique, cela dit, si l'un d'entre vous peut transformer cette macro en macrofonction, je suis preneuse).

Merci à vous

C@thy
BipBip.gif
 
@

@+Thierry

Guest
Coucou C@thy, José, Pascal, le Forum.

Arf, on s'est fait tous zopper alors !!!!

J'avais bien lu "Formule" dans le titre !

Pour une Function VBA c'est simple :

Option Explicit
Option Compare Text


Public Function COMPTECODE(ByRef Cell As Range) As Byte
Dim SearchedString As String, TheCell As String
Dim WS As Worksheet
Dim i As Byte

Application.Volatile

TheCell = "D2"
SearchedString = Cell.Value

        For Each WS In ThisWorkbook.Worksheets
            If WS.Range(TheCell).Value = SearchedString Then
              i = i + 1
            End If
        Next WS

COMPTECODE = i

End Function


Que tu pourras appeller depuis une feuille comme ceci par exemple :
=COMPTECODE(A1)
(A1 étant la cellule contenant le code à scruter sur toutes les feuilles)

Mais par contre que ce soit des Sub ou des Function, le niveau de sécurité haut ne devrait pas laisser passer...

Maintenant dans le style usine à gaz, il faudrait ajouter une feuille qui reprendrait en lien toutes les cellule D2 que tu cacherais, et une formule COUNTIF (NB.Si en FR) qui pointerait sur cette feuilles... Mais maintenance lourde à assumer aussi...

Bon Courage
@+Thierry
 
C

C@thy

Guest
Thierry, tu es le roi des UserForms, j'aime beaucoup celui-là, je le range dans ma collec!

On va aussi peut-être avoir un souci : pour l'instant aucune de nos unités ne comporte plus de 250 personnes, et la politique n'est pas à l'embauche, quelle est la limite du nombre de feuilles dans un classeur??? 256???

Il faut peut-être structurer autrement qu'une fiche (= 1 feuille) par agent... fô voir.

Merci pour la macro fonction, elle va aussi dans la collec.

Bises

C@thy
 

Discussions similaires

Réponses
4
Affichages
334

Statistiques des forums

Discussions
312 428
Messages
2 088 338
Membres
103 821
dernier inscrit
Lorient56