Bonjour,
j'ai fais une macro qui fais la chose suivante:
elle fait un parcoure total de la feuille "suivi des demandes", si la valeur de la colonne "T" est "TER" ou "ANU", elle copie la ligne de la colonne "A" à la colonne "AO" dans une autre feuille qui s'appelle "Demandes closes".
le problème c'est qu'elle ne me retourne pas toutes les lignes qu'il faut, il faut que je clique sur le bouton qui déclenche la macro une deuxième fois, pour qu'elle me retourne une autre partie des lignes, et ainsi de suite.
sachant que c'est pas un problème d'espace, car j'ai vérifié.
voila le code:
svp si vous avez une idée de la cause, aidez moi.
MERCI
j'ai fais une macro qui fais la chose suivante:
elle fait un parcoure total de la feuille "suivi des demandes", si la valeur de la colonne "T" est "TER" ou "ANU", elle copie la ligne de la colonne "A" à la colonne "AO" dans une autre feuille qui s'appelle "Demandes closes".
le problème c'est qu'elle ne me retourne pas toutes les lignes qu'il faut, il faut que je clique sur le bouton qui déclenche la macro une deuxième fois, pour qu'elle me retourne une autre partie des lignes, et ainsi de suite.
sachant que c'est pas un problème d'espace, car j'ai vérifié.
voila le code:
Code:
Sub ExtractionListeCloturée()
Application.DisplayAlerts = False
Dim DerLig As Long, Lig As Long
Dim FeuilDst As Worksheet, DerLD As Long
' Définir la valeur de l'Objet FeuilDst
' Nom de la feuille de Destination
Set FeuilDst = Sheets("Demandes closes")
' Avec la Feuille "suivi des demandes"
With Sheets("Suivi des demandes")
' Trouver la dernière ligne
DerLig = .Range("A" & Rows.Count).End(xlUp).Row
' Pour chaque ligne
For Lig = 3 To DerLig
Select Case .Range("T" & Lig).Value
'Si l'on a l'une des valeurs suivantes : "TER", "ANU"
Case "TER", "ANU"
'Colorer le numéro en bleu
.Range("B" & Lig).Font.Color = vbBlue
'Récupérer la dernière ligne de la feuille de destination
DerLD = FeuilDst.Range("A" & Rows.Count).End(xlUp).Row
'Inscrire les valeurs
.Range("A" & Lig & ":AO" & Lig).Copy
FeuilDst.Range("A" & DerLD + 1 & ":AO" & DerLD + 1).PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
.Range("A" & Lig).EntireRow.Delete
Case Else
End Select
Next Lig
End With
Application.DisplayAlerts = True
End Sub
svp si vous avez une idée de la cause, aidez moi.
MERCI