Macro archivage

Bonjour,

j'ai adapté une macro que j'ai trouvé sur le net pour archiver des lignes de tâches dont le statut d'avancement indique "terminé".

Seul petit bémol, les lignes archivées se rangent pas dans le même ordre que ma liste de tâches. En effet les lignes archivées devraient se ranger dans cet ordre: 2, 5, 6, 9... mais là elles se rengent de la dernière à la première

Est ce que quelqu'un saurait comment faire pour archiver les lignes dans le bon ordre?

Merci

Bonjour,

Modifiez votre macro comme ceci:

Sub Test()
    Dim DlgO As Integer, DlgA As Integer
    Dim WO As Worksheet, WA As Worksheet
    Dim X As Integer
    Application.ScreenUpdating = False
    Set WO = Worksheets("FD_2023")  ' set feuille Orga
    Set WA = Worksheets("Archives")
    DlgO = WO.Cells(Rows.Count, "O").End(xlUp).Row  ' dernière ligne feuille Orga
    DlgA = WA.Cells(Rows.Count, "O").End(xlUp).Row + 1 ' 1re ligne vide de la feuille Archive
    WO.Range("A2:Q" & DlgO).Copy WA.Range("A" & DlgA) ' copier les données
    DlgA = WA.Cells(Rows.Count, "O").End(xlUp).Row  ' dernière ligne de la feuille Archive

    For X = DlgA To 2 Step -1   ' de la dernière ligne jusqu'à la ligne 3
        If WA.Cells(X, "O").Value Like "*En cours*" Then
           WA.Range("A" & X & ":Q" & X).Delete Shift:=xlUp   ' supprimer la ligne
        End If
    Next X
End Sub

Principe:

On copie tout sur la feuille "Archives" puis, on élimine tout ce qui est "En cours"

Cdlt

Rechercher des sujets similaires à "macro archivage"