compter un nombre de matricule

ricou77

XLDnaute Nouveau
Bonjour,

J'ai un tableau du genre :
505698 cis 1
505698 cis 1
515897 cis 2
516987 cis 1
489658 cis 3

Je souhaiterais pouvoir compter le nombre de matricule par cis, ce qui donnerait :
cis 1 2
cis 2 1
cis 3 1
Petite précision importante, le 2ème champ (cis 1, cis 2) est exclusivement alphabétique.

Lorsque je fais un tableau croisé dynamique il me compte le nombre de ligne et pas le nombre de matricule différent par cis.
Est-ce possible ?
Si oui comment ? (avec un TCD ou une formule ?)

En pièce jointe, je rajoute le fichier. Dans ce fichier il y a 3 colonnes :
- matricules
- CIS
- Type de garde

J'ai donc besoin de connaitre le nombre de matricule par cis et par type de garde.

Merci d'avance

Cordialement
 

Pièces jointes

  • FICHIERS MATRICULES.xls
    373.5 KB · Affichages: 60
Dernière édition:

tdenfert

XLDnaute Impliqué
Re : compter un nombre de matricule

Bonjour,

Met un fichier avec tes matricules se sera plus facile pour te répondre
a priori avec le TDC et ou la formule seront possible.
Comme ça on ne sait pas si ton matricule est sur 1, 2 ou 3 cellule a priori sur 2
 

tdenfert

XLDnaute Impliqué
Re : compter un nombre de matricule

Bonjour,

Un essai avec sommeprod on pourrait le faire avec NB.si
et en feuille 2 avec Un TDC
Attention il y a des espaces derrière les DI (un ou deux) voir TDC pour les changer faire recherche remplacer
 

Pièces jointes

  • Copie de FICHIERS MATRICULES.xls
    482 KB · Affichages: 99

PrinceCorwin

XLDnaute Occasionnel
Re : compter un nombre de matricule

Bonjour,

Un petit script pour comptabiliser les matricules
Code:
Option Explicit
Sub CompteCisParRegime()
Dim Listeunique As Collection
Dim x As Integer
Dim Cell As Range
Dim xTemp As String
Dim nbLigne As Long

Set Listeunique = New Collection
On Error Resume Next

Sheets("Feuil1").Select
nbLigne = [A65000].End(xlUp).Row
Range("B2:B" & nbLigne).Select
For Each Cell In Selection
    xTemp = Cell.Value & ";" & Cell.Offset(, 1).Value
    Listeunique.Add xTemp, CStr(xTemp)
    If Err <> 0 Then
        Err.Clear
    End If
Next

Sheets("feuil2").Select
For x = 1 To Listeunique.Count
    Cells(x + 1, 1) = Split(Listeunique.Item(x), ";")(0)
    Cells(x + 1, 2) = Split(Listeunique.Item(x), ";")(1)
    Cells(x + 1, 3).FormulaR1C1 = "=SUMPRODUCT((Feuil1!R2C2:R" & nbLigne & "C2=Feuil2!RC1)*(Feuil1!R2C3:R" & nbLigne & "C3=Feuil2!RC2))"
Next x

End Sub

Bonne journée
 

Discussions similaires

Réponses
4
Affichages
238