problème avec le code VBA

mimiaqu

XLDnaute Nouveau
Bonjour à tous,

voila je debute sur VBA j'ai une liste de date et heure j'essaye de trier tous ca en supprimant les dimanches et jours feriés ainsi que d'afficher les heures de 06:00 à 22h00.
voici le code que j'ai essayé de faire :

Sub Suppr_dimanche_jours_feries()
Dim i As Integer
Application.ScreenUpdating = False
For i = 0 To 21753 If (Cells(i, 4) = "dimanche" Or Cells(i, 5) = "1 janvier" Or Cells(i, 5) = "25 décembre" Or Cells(i, 5) = "11 novembre" Or Cells(i, 6) < "06:00" Or Cells(i, 6) > "22:00") Then
Cells(i, 1).EntireRow.Delete
i = i - 1
End If
Next
Application.ScreenUpdating = True
End Sub
sauf que j'ai 21753 lignes et c'est très long à exécuter
Merci d'avance pour votre aide
PS (j'utilise Excel 2010)
 

Pièces jointes

  • excel.jpg
    excel.jpg
    79.6 KB · Affichages: 66
  • excel.jpg
    excel.jpg
    79.6 KB · Affichages: 67
  • excel.jpg
    excel.jpg
    79.6 KB · Affichages: 65
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : problème avec le code VBA

Bonjour,

2 petites infos au passage :
Code:
For i = 0 To 21753
"cells" avec 0 comme numéro de ligne te renverra une erreur... commencer par 1...
quand tu supprimes des lignes, toujours préférable de commencer par la fin et de remonter :
Code:
For i = 21753 to 1 Step -1
A noter également, pour gagner en rapidité, peut être passer par un filtre automatique... A voir...

bon après midi
@+
 

Discussions similaires

Réponses
6
Affichages
321
Réponses
0
Affichages
195

Statistiques des forums

Discussions
312 764
Messages
2 091 862
Membres
105 082
dernier inscrit
saragestion