• Initiateur de la discussion Initiateur de la discussion essor
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

E

essor

Guest
Bonjour à tous
J'ai une liste de référence d'article (C1025, C1059, etc) d'environ 800 valeurs et j'aimerai avoir un récapitulatif du nombre de fois ou l'article apparait.
Ex:
feuille excel
C1025
C1025
C1025
C1029
C1029
C1029
C1029
C1069

et je veux en récapitulatif
C1025:3
C1029:4
C1069:1

Merci d'avance
 
Re : Compteur dans excel

Bonjour,

Il y a deux étapes pour répondre à ta question :

1° Créer un tableau récapitulant les fournisseurs sans doublon

2° remplir ce tableau avec les nombres d'occurences.

Pour la 1° étape je suggère d'utiliser un filtre élaboré :

menu/Données/Filtrer/Filtre élaboré

dans la fenêtre filtre élaboré cocher :
- copier vers un autre emplacement
- extraction sans doublon

renseigner les fenêtres :
- Plages : sélectionne depuis A1 jusqu'en bas de la colonne A (dans ton exemple : $A$1:$A$42)
- Copier dans : Sélectionne une seule cellule à partir de laquelle sera créée ta table (par exemple K1)
- Ne rien mettre dans Zone de critère, il n'y aura donc pas de filtre tout sera recopié mais sans doublon.

OK : la table est créée.

Il ne reste plus qu'à la peupler en écrivant en L2 la formule : =NB.SI($A$2:$A$42;K2)
et la recopier de L2 à L21

ATTENTION : Si le contenu des lignes du tableau (les formules NB.SI()) se met à jour à chaque modification, la structure du tableau est statique, il faudra le reconstruire à chaque nouveau fournisseur saisi.

Sigismond
 
Re : Compteur dans excel

Oui LaBraise, c'est une solution plus élégante
Avec comme contrepartie que le Tableau croisé dynamique est statique
- en nombre de fournisseurs
- et en nombre d'occurences de chaque fournisseur

mais comme il est rapide à reconstruire...

Je pense que seul VBA peut fournir une solution entièrement automatique.

Une piste intermédiaire serait la solution que je propose qui tiens à jour le nombre d'occurence de chaque fournisseur avec un indicateur qui signale automatiquement quand la structure de la liste n'est plus à jour (en nombre de fournisseurs). Je réfléchis la-dessus.

Sigismond
 
Dernière édition:
Re : Compteur dans excel

Re
J'ai commencé par nommer les info qui sont utiles pour la macro.
HTML:
val=DECALER(Feuil1!$F$1;;;NBVAL(Feuil1!$F:$F))val1=DECALER(Feuil1!$J$2;;;NBVAL(Feuil1!$J:$J)-1)val2=DECALER(val1;;1)
"Val " permet de selectionner les valeurs à prendre en compte
"Val1" servira à effacer les valeurs de la colonne J
"Val2 " permet d'ajuster le sommeprod dans la macro.
la macro
HTML:
Sub Macro1()
On Error Resume Next
'efface le contenu de val1 et val2
[val1].ClearContents
[val2].ClearContents
'Selectionne les données les copies sans doublon en J1
    Range("val").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("J1"), Unique:=True
4Selectionne la cellule K2 et affecte la fonction sommeprod
    Range("K2").Select
    ActiveCell.FormulaR1C1 = "=SUMPRODUCT(--(val=RC[-1]))"
    Selection.AutoFill Destination:=Range("val2"), Type:=xlFillDefault
'Tris dans l'ordre croisant les données de la colonne J
    Columns("J:J").Sort Key1:=Range("J2"), Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1
End Sub
 
Re : Compteur dans excel

Re
J'ai commencé par nommer les info qui sont utiles pour la macro.
HTML:
val=DECALER(Feuil1!$F$1;;;NBVAL(Feuil1!$F:$F))val1=DECALER(Feuil1!$J$2;;;NBVAL(Feuil1!$J:$J)-1)val2=DECALER(val1;;1)
"Val " permet de selectionner les valeurs à prendre en compte
"Val1" servira à effacer les valeurs de la colonne J
"Val2 " permet d'ajuster le sommeprod dans la macro.
la macro
HTML:
Sub Macro1()
On Error Resume Next
'efface le contenu de val1 et val2
[val1].ClearContents
[val2].ClearContents
'Selectionne les données les copies sans doublon en J1
    Range("val").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("J1"), Unique:=True
4Selectionne la cellule K2 et affecte la fonction sommeprod
    Range("K2").Select
    ActiveCell.FormulaR1C1 = "=SUMPRODUCT(--(val=RC[-1]))"
    Selection.AutoFill Destination:=Range("val2"), Type:=xlFillDefault
'Tris dans l'ordre croisant les données de la colonne J
    Columns("J:J").Sort Key1:=Range("J2"), Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1
End Sub

Tout marche nikel merci à tous!
 
Re : Compteur dans excel

Bonjour à tous,

Oui LaBraise, c'est une solution plus élégante
Avec comme contrepartie que le Tableau croisé dynamique est statique
- en nombre de fournisseurs
- et en nombre d'occurences de chaque fournisseur

Le TCD est loin d'être statique puisqu'il est dynamique

Par Nom / Definir : Base_TCD : =DECALER(Data!$A:$F;;;NBVAL(Data!$F:$F))
Actualisation à l'activation de la feuille 'TCD' : ActiveWorkbook.RefreshAll

A+ à tous
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
8
Affichages
2 K
Retour