Bonjour,

j'essaye en tâtonnant d'automatiser une tache avec un peut de VBA.

J'ai une liste dans une feuille qui recense les dossiers traités par la hotline et je cherche à faire un "top 5" des applications qui posent le plus de probleme.
J'ai donc un tableau dont la colonne "D" contiens les nom des applications mais rien n'est classé. J'ai donc essayé de compter les doublons afin d'aboutir au résultat souhaité.
voici ce à quoi je suis arrivé avec un peut de recherche :

Le code suivant se trouve sur la feuille "STATS", le tableau contenant les valeurs dans la feuille "TMP" je cherche dans un premiers temps à afficher simplement une msgbox histoire de tester avant d'adapter le code.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
    Dim j As Integer, plage As Range, prec As String
    Application.ScreenUpdating = False
    Set plage = Worksheets("TMP").Range("D1:D" & nbdossier)
    prec = ""
    For j = 1 To nbdossier
 
            With Application.WorksheetFunction
                If .CountIf(plage, Cells(j, 4)) > 1 And Cells(j, 4) <> prec Then
                    MsgBox "Il y a " & .CountIf(plage, Cells(j, 4)) & " fois la valeur " & Cells(j, 4)
                End If
            End With
            prec = Cells(j, 4)
 
    Next j
Lorsque je teste le code dans la feuille qui contiens le tableau : pas de soucis tout fonctionne à merveille. Par contre si je fais le test sur une autre feuille il me trouve bien les différentes application de ma colonne D mais ne me compte pas les occurrences. J'ai tourné et retourné dans tous les sens et je ne vois pas trop où j'ai pu me planter. Si quelqu'un à une idée je suis preneur

Par avance merci.