afficher les valeurs d'une colonne présentes plus de 5 fois

natorp

XLDnaute Accro
Bjr à toutes et tous

Comme l'indique le titre, j'ai besoin d'afficher les noms qui sont présents plus de 5 fois dans la colonne A et leur nombre (voir pièce jointe)

Merci de votre attention et votre aide
Cordialement
Gérard
 

Pièces jointes

  • Classeur2v2.xls
    59.5 KB · Affichages: 65

13GIBE59

XLDnaute Accro
Re : afficher les valeurs d'une colonne présentes plus de 5 fois

Bonjour natorp.

Une piste en pièce jointe, sachant que je ne sais pas sous quelle forme tu veux le résultat..
Inspire toi donc de la formule...
 

Pièces jointes

  • natorp.xls
    59.5 KB · Affichages: 79
  • natorp.xls
    59.5 KB · Affichages: 74
  • natorp.xls
    59.5 KB · Affichages: 78

david84

XLDnaute Barbatruc
Re : afficher les valeurs d'une colonne présentes plus de 5 fois

Bonjour tout le monde,
cf.fichier.
A+
 

Pièces jointes

  • Copie de Classeur2v2.xls
    121.5 KB · Affichages: 53
  • Copie de Classeur2v2.xls
    121.5 KB · Affichages: 54
  • Copie de Classeur2v2.xls
    121.5 KB · Affichages: 53

david84

XLDnaute Barbatruc
Re : afficher les valeurs d'une colonne présentes plus de 5 fois

Re
Testé sur le fichie de Gorfael (que je salue), une autre proposition par macro, bien plus rapide que par formule :
Code:
Sub test()
Dim Tabl, Tabl2, Plage, Plage2, i&, j&
    With Sheets("Feuil2")
        Set Plage = .Range(.[A2], .Range("A" & Rows.Count).End(xlUp))
        Set Plage2 = .Range(.[A1], .Range("A" & Rows.Count).End(xlUp))
        .Range("E9:F" & Plage.Rows.Count).ClearContents
        Tabl = .Range(.[A2], .Range("A" & Rows.Count).End(xlUp)).Value
        Tabl2 = .Evaluate("TRANSPOSE(FREQUENCY(IF(" & Plage.Address & "<> """",MATCH(" & Plage.Address & "," & _
        Plage.Address & ",0)),ROW(" & Plage2.Address & ")))")
        j = 1
        For i = 1 To Plage.Rows.Count
            If Tabl2(i) > 4 Then
            Dim Tabl3()
            ReDim Preserve Tabl3(1 To Plage.Rows.Count, 1)
            Tabl3(j, 0) = Tabl(i, 1)
            Tabl3(j, 1) = Tabl2(i)
            j = j + 1
            End If
         Next i
        .Range("E9:F" & Plage.Rows.Count) = Tabl3
    End With
End Sub
A+
 

Pièces jointes

  • FréquenceNom.xls
    72 KB · Affichages: 69
  • FréquenceNom.xls
    72 KB · Affichages: 67
  • FréquenceNom.xls
    72 KB · Affichages: 67
Dernière édition:

david84

XLDnaute Barbatruc
Re : afficher les valeurs d'une colonne présentes plus de 5 fois

Re re
Code légèrement différent à tester également :
Code:
Sub test2()
Dim Tabl, Tabl2, Plage, Plage2, i&, j&, Nb
    With Sheets("Feuil2")
        Set Plage = .Range(.[A2], .Range("A" & Rows.Count).End(xlUp))
        Set Plage2 = .Range(.[A1], .Range("A" & Rows.Count).End(xlUp))
        .Range("C1:D" & Plage.Rows.Count).ClearContents
        Tabl = .Range(.[A2], .Range("A" & Rows.Count).End(xlUp)).Value
        Tabl2 = .Evaluate("TRANSPOSE(FREQUENCY(IF(" & Plage.Address & "<> """",MATCH(" & Plage.Address & "," & _
        Plage.Address & ",0)),ROW(" & Plage2.Address & ")))")
        Nb = .Evaluate("SUM(N(FREQUENCY(IF(" & Plage.Address & "<> """",MATCH(" & Plage.Address & "," & _
        Plage.Address & ",0)),ROW(" & Plage2.Address & "))>4))")
        j = 1
        For i = 1 To Plage.Rows.Count
            If Tabl2(i) > 4 Then
            Dim Tabl3()
            ReDim Preserve Tabl3(1 To Nb, 1)
            Tabl3(j, 0) = Tabl(i, 1)
            Tabl3(j, 1) = Tabl2(i)
            j = j + 1
            End If
         Next i
        .Range("C1:D" & Nb) = Tabl3
    End With
End Sub
A+
 

Pièces jointes

  • FréquenceNom.xls
    68.5 KB · Affichages: 59
  • FréquenceNom.xls
    68.5 KB · Affichages: 64
  • FréquenceNom.xls
    68.5 KB · Affichages: 66
Dernière édition:

natorp

XLDnaute Accro
Re : afficher les valeurs d'une colonne présentes plus de 5 fois

Bjr à tous et merci pour vos propositions

Je ne pensais pas que vous chercheriez avec macro et du coup j'ai oublié de préciser que mon réseau d'entreprise supprime le VBA, je ne peux donc pas voir ce que nous a concocté Gorfael. Sinon ce que David a fait est tout à fait satisfaisant, par formule et par macro

Vraiment, merci beaucoup de votre aide

Bonne journée, Gérard
 

Discussions similaires

Réponses
4
Affichages
201

Statistiques des forums

Discussions
312 347
Messages
2 087 502
Membres
103 563
dernier inscrit
samyezzehar