Recuperer index tableau

Bonjour

Je voudrais récupérer l'index du tableau

Top_x_valeurs(Z) = Application.Large(Application.WorksheetFunction.Index(Tab_Num_Sorties, 2, 0), Z)

me renvoi pour une ligne :

20,00 16,00 12,00 12,00 12,00 8,00 8,00 4,00 4,00 4,00

je voudrais que :

Top_x_valeurs_N° me renvoi la position des valeurs Top_x_valeurs(Z) dans Tab_Num_Sorties, 2, 0)

ex position = 7 12 5 6 3 15 etc...

merci

code:

Je voudrais récupérer l'index du tableau

Dim Top_x_valeurs(1 To 20)

Dim Top_x_valeurs_N°(1 to 20)

For k = 1 To 3 'UBound(Tab_Num_Sorties, 2)

For j = 1 To 20 'UBound(Tab_Num_Sorties, 1)

For Z = 1 To 10

Tab_Num_Sorties(1, j) = Application.WorksheetFunction.CountIf(Plage_BD, j)

Tab_Num_Sorties(2, j) = (Tab_Num_Sorties(1, j) / NB_courses) * 100

Top_x_valeurs(Z) = Application.Large(Application.WorksheetFunction.Index(Tab_Num_Sorties, 2, 0), Z)

'If Top_x_valeurs(Z) = Tab_Num_Sorties(2, j) Then Top_x_valeurs_N°(Z) = j

Debug.Print Top_x_valeurs(Z)

Next

Next

Next

merci

Bonjour,

Pour le fichier

Il faut que j'enlève un tas de debug.print, un tas d'affichage ,test, que je supprime un tas de feuille qui n'ont rien a voir avec le problème ert qui ne ferait que compliquer la vision du problème, donc je ne l'ai pas fourni, quand c'est possible je le fourni

quand à la la solution, je j'ai trouvée avec match, qui a l'inconvenient de ne renvoyer que la premiere occurence:

mon problem est maintenant de trouver toutes les valeurs qui correspondent à ces index dans Tab_Num_Sorties:

ce que j'ai essayé de faire avec :

If IsError(pos) Then Top_x_valeurs_N°_Index(z) = pos

ce que j'ai essayé de faire avec :

If pos = j Then Top_x_valeurs_N°(j) = Tab_Num_Sorties(2, j)

ce que j'ai essayé de faire avec :

if IsError(pos) then cells(i,420)=0

et qui ne fonctionnent pas

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""

code:

For k = 1 To 3 'UBound(Tab_Num_Sorties, 2)

For j = 1 To 20 'UBound(Tab_Num_Sorties, 1)

For z = 1 To 10

Tab_Num_Sorties(1, j) = Application.WorksheetFunction.CountIf(Plage_BD, j)

Tab_Num_Sorties(2, j) = (Tab_Num_Sorties(1, j) / NB_courses) * 100

'Tab_Num_Sorties(3, j) = Application.Large(Application.WorksheetFunction.Index(Tab_Num_Sorties, 2, 0), Z)

Top_x_valeurs(z) = Application.Large(Application.WorksheetFunction.Index(Tab_Num_Sorties, 2, 0), z)

pos = Application.Match(Top_x_valeurs(z), Application.WorksheetFunction.Index(Tab_Num_Sorties, 2, 0), False)

If Not IsError(pos) Then Top_x_valeurs_N°_Index(z) = pos

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

la ligne des valeurs du top 10 :

11,36 10,23 10,23 10,23 9,09 6,82 6,82 5,68 4,55 4,55

ce que me renvoi Top_x_valeurs_N°_Index pour la même ligne

6 1 1 1 12 7 7 3 9 9

La ligne dont on doit trouver l'index

10,22 2,27 5,68 10,22 2,27 11,36 6,81 10,22 74,54 6,81 3,40 9,09 4,54 2,27 4,54 1,136 1,13 4,54

11.36 la valeur max est classé en 6ème position dans Tab_Num_Sorties

10,23 la deuxième valeur 10.23 (10.22) est cité trois fois en deuxième position dans Tab_Num_Sorties

9.09 la troisième valeur est cité une fois en 12 ème position dans Tab_Num_Sorties

etc..

Bonjour,

Tu as lu le précédent message de Steelson ?

Cdlt.

@Hoareau

A ta disposition pour t'aider à résoudre ton sujet.

Tu auras sans doute à utiliser un find multiple de type :

With Worksheets(1).Range("a:a")
    Set c = .Find("ce_que_je_cherche", lookin:=xlValues)
    If Not c Is Nothing Then
        firstAddress = c.Address
        Do
            'code xxxx
            Set c = .FindNext(c)
        Loop While Not c Is Nothing And c.Address <> firstAddress
    End If
End With
Rechercher des sujets similaires à "recuperer index tableau"