Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Comment compter les doublons ?

O

olivier

Guest
Bonjour à Tous

Soit une plage de cellules A1:C12 contenant des "string" textes et des "blancs". Par Exemple: Colonne A: a, b, c, d, e,; Colonne B: b,d,c,v,m,d,; Colonne C;r,d,w,s,d,c,v,b,n,m;s,w.
Comment avec une seule formule dans une seule cellule déterminer le nombre de doublons (ou d'occurences unique) ?

Merci d'avance pour votre aide
Olivier
 
A

albert

Guest
bonsoir olivier,
ce code (retrouvé dans mes archives) travaille bien sue la colonne A

tu peux l'adapter à tes besoins
Public Sub DeleteDuplicateRows()
'Chip Pearson
''This macro deletes duplicate rows in the selection.
''Duplicates are counted in the COLUMN of the active cell.
Dim Col As Integer
Dim r As Long
Dim C As Range
Dim N As Long
Dim V As Variant
Dim Rng As Range

On Error GoTo EndMacro
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual

Col = ActiveCell.Column
If Selection.Rows.Count > 1 Then
Set Rng = Selection
Else
Set Rng = ActiveSheet.UsedRange.Rows
End If

N = 0
For r = Rng.Rows.Count To 1 Step -1
Rng.Cells(r, 5).Value = RTrim(Rng.Cells(r, 15.Value)
Next r

For r = Rng.Rows.Count To 1 Step -1
V = Rng.Cells(r, 1).Value
If Application.WorksheetFunction.CountIf(Rng.Columns(1), V) > 1 Then
Rng.Rows(r).EntireRow.Delete
N = N + 1
End If
Next r

EndMacro:
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub



albert
 

Pièces jointes

  • Doublons.zip
    7.4 KB · Affichages: 34
  • Doublons.zip
    7.4 KB · Affichages: 36
  • Doublons.zip
    7.4 KB · Affichages: 36
J

Jean-Marie

Guest
Bonsoir

Une fonction matricielle retournant le nombre d'occurrences uniques, fonction à valider par les touches Ctrl+Shift+Entrer.

=SOMMEPROD(SI(ESTVIDE(A1:C12);0;1/NB.SI(A1:C12;A1:C12)))

Une fonction matricielle retournant le nombre d'occurrences présentes plusieurs fois dans la plage, fonction à valider par les touches Ctrl+Shift+Entrer.

=SOMMEPROD(SI(NB.SI(A1:C12;A1:C12)>1;1/NB.SI(A1:C12;A1:C12);0))

@+Jean-Marie
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…