Macro archivage
d
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
A
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