OVH Cloud OVH Cloud

DOUBLONS identifier et compter

5 réponses
Avatar
Alex
Comment identifier et compter le nombre de doublon dans=20
une colonne dont les donn=E9es sont trop nombreuses pour un=20
tableau crois=E9 dynamique

Merci

Alex

5 réponses

Avatar
michdenis
Bonjour Alex,

En supposant que tes données soit en colonne A1:Ax de la feuil1 ... le résultat va s'afficher en feuil2 du classeur.

En feuil2 tu auras :

En colonne A : le doublon (appellation)
En colonne B : Le nombre de fois qu'il se répète.

Je te fais parvenir le fichier exemple... ceci peut sûrement être améliorer ... à toi de jouer !

'---------------------------------------------
Sub Doublons()

Dim NbEnr As Long, NbDoublons As Long
Dim Rg As Range, Rg1 As Range
Dim A As String, B As String, C As String

Application.ScreenUpdating = False
'S'assurer que la plage de réception est vide
Range("Feuil2!A1").CurrentRegion.Clear

With Worksheets("Feuil1")
Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row)
'Plage de critère
A = Rg.Parent.Name & "!" & Rg.Address
C = Rg.Parent.Name & "!" & Rg(2).Address(0, 0)
.Range("E1") = ""
.Range("E2").FormulaLocal = "=NB.SI(" & A & ";" & C & ")>1"
'Application du filtre
Rg.AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=.Range("E1:E2"), _
CopyToRange:=Range("Feuil2!A1"), Unique:=True
'Résultats en feuille 2
With Worksheets("Feuil2")
Set Rg1 = .Range("A1:A" & .Range("A65536").End(xlUp).Row)
If Rg1.Rows.Count > 1 Then
A = Rg.Parent.Name & "!" & Rg.Address
B = Rg1.Parent.Name & "!" & Rg1(2).Address(0, 0)
Rg1(, 2) = "Nombre"
Rg1.Offset(1, 1).Resize(Rg1.Rows.Count - 1, 1) _
.FormulaLocal = "=Nb.Si(" & A & ";" & B & ")"
.Columns("A:B").EntireRow.AutoFit
NbEnr = Application.Subtotal(3, Rg1) - 1
NbDoublons = Rg1.Rows.Count - 1
If NbDoublons > 0 Then
.Activate
MsgBox NbDoublons & " nombre de doublons."
End If
End If
End With
.Range("E2") = ""
End With
Set Rg1 = Nothing: Set Rg = Nothing
End Sub
'---------------------------------------------


Salutations!



"Alex" a écrit dans le message de news:1d51b01c4543a$988b9f60$
Comment identifier et compter le nombre de doublon dans
une colonne dont les données sont trop nombreuses pour un
tableau croisé dynamique

Merci

Alex
Avatar
michdenis
Pour le fichier , tu n'auras qu'à faire connaître ton adresse !


Salutations!


"michdenis" a écrit dans le message de news:
Bonjour Alex,

En supposant que tes données soit en colonne A1:Ax de la feuil1 ... le résultat va s'afficher en feuil2 du classeur.

En feuil2 tu auras :

En colonne A : le doublon (appellation)
En colonne B : Le nombre de fois qu'il se répète.

Je te fais parvenir le fichier exemple... ceci peut sûrement être améliorer ... à toi de jouer !

'---------------------------------------------
Sub Doublons()

Dim NbEnr As Long, NbDoublons As Long
Dim Rg As Range, Rg1 As Range
Dim A As String, B As String, C As String

Application.ScreenUpdating = False
'S'assurer que la plage de réception est vide
Range("Feuil2!A1").CurrentRegion.Clear

With Worksheets("Feuil1")
Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row)
'Plage de critère
A = Rg.Parent.Name & "!" & Rg.Address
C = Rg.Parent.Name & "!" & Rg(2).Address(0, 0)
.Range("E1") = ""
.Range("E2").FormulaLocal = "=NB.SI(" & A & ";" & C & ")>1"
'Application du filtre
Rg.AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=.Range("E1:E2"), _
CopyToRange:=Range("Feuil2!A1"), Unique:=True
'Résultats en feuille 2
With Worksheets("Feuil2")
Set Rg1 = .Range("A1:A" & .Range("A65536").End(xlUp).Row)
If Rg1.Rows.Count > 1 Then
A = Rg.Parent.Name & "!" & Rg.Address
B = Rg1.Parent.Name & "!" & Rg1(2).Address(0, 0)
Rg1(, 2) = "Nombre"
Rg1.Offset(1, 1).Resize(Rg1.Rows.Count - 1, 1) _
.FormulaLocal = "=Nb.Si(" & A & ";" & B & ")"
.Columns("A:B").EntireRow.AutoFit
NbEnr = Application.Subtotal(3, Rg1) - 1
NbDoublons = Rg1.Rows.Count - 1
If NbDoublons > 0 Then
.Activate
MsgBox NbDoublons & " nombre de doublons."
End If
End If
End With
.Range("E2") = ""
End With
Set Rg1 = Nothing: Set Rg = Nothing
End Sub
'---------------------------------------------


Salutations!



"Alex" a écrit dans le message de news:1d51b01c4543a$988b9f60$
Comment identifier et compter le nombre de doublon dans
une colonne dont les données sont trop nombreuses pour un
tableau croisé dynamique

Merci

Alex
Avatar
vg00
Et moi je cherche à mettre en forme conditionnelle les cellules L7 à L27 de la feuille TEST si dans la colonne L de la feuille VALIDER on trouve une valeur commune à feuille test avec une cellule vide en N (ceci sur fezuille VALIDER
Si pas clair me mailer sur
Avatar
michdenis
Fichier parti.


Annule ton message sur le groupe de discussion afin d'éviter de recevoir trop de SPAMS ...
Avatar
AV
Comment identifier et compter le nombre de doublon dans
une colonne


Tu as déjà posé la question et tu as déjà eu une réponse (fil hier 17:34)....

AV