Problème avec macro qui ne fonctionne plus

OOLIVE

XLDnaute Occasionnel
Bonjour à tous,

Je fais appel à vous car j'ai un soucis avec une macro.. En effet, il y a quelques mois, j'ai fais une macro permettant de faire un garder, dans un tableau excel, les lignes comprises dans un intervalle de date indiqué via des userform.

Jusqu'à aujourd'hui, tout fonctionnait surper bien et ce matin, je vois apparaître une erreur.. Pourriez-vous m'aider à comprendre pourquoi SVP ?

Voici mon code (l'erreur intervient à partir de Next X):

Sub stats()

Dim Debut As Date, Fin As Date
Dim X As Long, i As Long, Ligne As Long
Dim LastLigA As Long, LastLigF As Long

Application.ScreenUpdating = False
'Suppression du lien Hypertexte
ActiveSheet.Shapes.Range(Array("Picture 1")).Select
Selection.ShapeRange.Item(1).Hyperlink.Delete
Selection.Delete


'Sélection de l'intervalle de date sur lequel l'analyse va porter
Debut = CDate(InputBox("Quelle est la date de début d'analyse ? (jj/mm/aaaa)", "Date début"))
Fin = CDate(InputBox("Quelle est la date de fin d'analyse ? (jj/mm/aaaa)", "Date fin")) + 1

'Traitement de l'analyse
For X = Range("A" & Rows.Count).End(xlUp).Row To 1 Step -1
If Range("A" & X) < Debut Or Fin <= Range("A" & X) Then Rows(X).Delete
Next X

'Réduction de la taille des cellules à 11
Rows("1:1").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.RowHeight = 11
Range("A1").Select


' Selectionne la première cellule du tableau
Range("A1").Select

Ligne = 1
' Recherche d'une cellule vide
Do
Ligne = Ligne + 1
Selection.Offset(1, 0).Select
Loop Until Ligne = 65536 Or IsEmpty(ActiveCell)

If Ligne = 65516 Then
MsgBox "Il n'y a pas de cellule vide dans la colonne A"
Else
For i = 1 To 3
'On vire toujours la même ligne
Rows(Ligne).Delete Shift:=xlDown
Next i
End If

Merci beaucoup.
 

herve62

XLDnaute Barbatruc
Supporter XLD
Re : Problème avec macro qui ne fonctionne plus

Bizarre moi j'ai testé dans un fichier ça marche
quoique :
For X = Range("A" & Rows.Count).End(xlUp).Row To 1 Step -1
Peut-être vaut-il mieux mettre le count de Row en variable avant .. non ?

et faire un FOR NEXT simple
AS tu testé le DEbug en pas à pas , avec point d'arrêt , pour identifier l'erreur et savoir la valeur de tes variables ?
 

OOLIVE

XLDnaute Occasionnel
Re : Problème avec macro qui ne fonctionne plus

Bonjour,

Merci pour la réponse rapide... J'ai descendu le code en intégralité et il s'avère que ma variable X a bien une valeur (dans mon cas, X= 1690)..

Je comprend pas pourquoi, depuis ce matin, ça ne fonctionne plus...

Comment ferais-tu pour mettre un count row en variable avant le For SVP ?

Merci.
 

Discussions similaires

Statistiques des forums

Discussions
312 198
Messages
2 086 132
Membres
103 127
dernier inscrit
willwebdesign