Bonjour,

Je disposes d'une variable tableau que je souhaite réorganiser comme suit.
Et... Je galère!

Voici le souci :
Tableau(0 To 19, 0 To 195)

Tableau(0, i) ==> dates qui se suivent mais avec des répétitions (01/02/2021 - 01/02/2021 - 01/02/2021 - 01/02/2021 - 02/02/2021 - 02/02/2021 - 03/02/2021 - 04/02/2021 - 04/02/2021 - 04/02/2021 - 04/02/2021 - 04/02/2021 - etc...)
Tableau(19, i) ==> des 1 ou des 0

Le but de la Sub ou fonction que je vous demande, est de construire une variable tableau "ordonnée", en mettant, par jour, les Tableau(19, i) = 1 en "fin de journée" :
out 1 : Tableau(0, i) = 01/02/2021, Tableau(19, i) = 0
out 2 : Tableau(0, i) = 01/02/2021, Tableau(19, i) = 0
out 3 : Tableau(0, i) = 01/02/2021, Tableau(19, i) = 0
out 4 : Tableau(0, i) = 01/02/2021, Tableau(19, i) = 1
out 5 : Tableau(0, i) = 02/02/2021, Tableau(19, i) = 0
out 6 : Tableau(0, i) = 02/02/2021, Tableau(19, i) = 0
out 7 : Tableau(0, i) = 03/02/2021, Tableau(19, i) = 0
out 8 : Tableau(0, i) = 04/02/2021, Tableau(19, i) = 0
out 9 : Tableau(0, i) = 04/02/2021, Tableau(19, i) = 1
out 10 : Tableau(0, i) = 04/02/2021, Tableau(19, i) = 1
out 11 : Tableau(0, i) = 04/02/2021, Tableau(19, i) = 1
out 12 : Tableau(0, i) = 04/02/2021, Tableau(19, i) = 1

Je ne sais pas si j'ai été très clair dans l'expression de ma demande...

Quelque chose comme ça (sauf que je n'arrive pas à trouver quoi mettre dans mes boucles Do.....!!! )
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
16
17
18
19
20
Private Sub ClasseLesUns(List() As Variant)
Dim t() As Variant, i As Long, j As Long, cpt As Long
    ReDim t(LBound(List, 1) To UBound(List, 1), LBound(List, 2) To UBound(List, 2))
    For j = LBound(t, 2) To UBound(t, 2)
        If List(19, j) = 1 Then
            Do While ???
                cpt = cpt + 1
            Loop
        Else
            Do While ???
                cpt = cpt + 1
            Loop
        End If
        For i = LBounr(t, 1) To UBound(t, 1)
            t(i, cpt) = List(i, j)
        Next i
    Next j
    Erase List
    List = t
End Sub