Un macro trops lent
Résolu/Fermé
hamouchka
Messages postés
14
Date d'inscription
jeudi 26 mai 2011
Statut
Membre
Dernière intervention
14 juin 2011
-
5 juin 2011 à 20:18
hamouchka Messages postés 14 Date d'inscription jeudi 26 mai 2011 Statut Membre Dernière intervention 14 juin 2011 - 13 juin 2011 à 17:53
hamouchka Messages postés 14 Date d'inscription jeudi 26 mai 2011 Statut Membre Dernière intervention 14 juin 2011 - 13 juin 2011 à 17:53
A voir également:
- Un macro trops lent
- Ordinateur lent - Guide
- Macro logiciel - Télécharger - Organisation
- Macro recorder - Télécharger - Confidentialité
- Macro Recorder - Télécharger - Divers Utilitaires
- Macro word - Guide
5 réponses
Mytå
Messages postés
2969
Date d'inscription
mardi 20 janvier 2009
Statut
Contributeur
Dernière intervention
20 décembre 2016
930
Modifié par Mytå le 5/06/2011 à 20:49
Modifié par Mytå le 5/06/2011 à 20:49
Salut le forum
Hamouchka, essaye comme ceci
Mytå
Hamouchka, essaye comme ceci
Sub hidecrows() Dim tempo As Date Dim firstaddress As String Dim c As Range tempo = InputBox(Prompt:="Filter Checks", Title:="Choose a Date", Default:="Enter the date here") With Sheets("checks-sheet").Range("D2:D4555") Set c = .Find(tempo, LookIn:=xlValues) If Not c Is Nothing Then firstaddress = c.Address Do Set c = .FindNext(c) c.EntireRow.Hidden = True Loop While Not c Is Nothing And c.Address <> firstaddress End If End With End Sub
Mytå
hamouchka
Messages postés
14
Date d'inscription
jeudi 26 mai 2011
Statut
Membre
Dernière intervention
14 juin 2011
5 juin 2011 à 21:43
5 juin 2011 à 21:43
Merci beaucoup!
C'est excellent sauf que l'autre macro est supposé de cacher tout se qui n'est pas égale à "tempo" ton macro fais l'inverse! comment je peux le corriger ?
encore Merci!
C'est excellent sauf que l'autre macro est supposé de cacher tout se qui n'est pas égale à "tempo" ton macro fais l'inverse! comment je peux le corriger ?
encore Merci!
eriiic
Messages postés
24513
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
25 mars 2023
7 168
5 juin 2011 à 23:16
5 juin 2011 à 23:16
Bonsoir,
Tu pourrais utiliser le filtre automatique :
Range("D1:D4555").AutoFilter Field:=1, Criteria1:=CDate(tempo)
eric
Tu pourrais utiliser le filtre automatique :
Range("D1:D4555").AutoFilter Field:=1, Criteria1:=CDate(tempo)
eric
hamouchka
Messages postés
14
Date d'inscription
jeudi 26 mai 2011
Statut
Membre
Dernière intervention
14 juin 2011
13 juin 2011 à 17:27
13 juin 2011 à 17:27
J'ai pas le droit d'utiliser les fonctions d'excel comme autofilter....
merci
merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
hamouchka
Messages postés
14
Date d'inscription
jeudi 26 mai 2011
Statut
Membre
Dernière intervention
14 juin 2011
13 juin 2011 à 17:53
13 juin 2011 à 17:53
C'est régler les amis voici ce j'ai fait :
Sheets("checks-sheet").Select
'selectionner la plage utilisée seulement
Range(Cells(2, 4), Cells(Rows.Count, 4).End(xlUp)).Select
'Boucle qui recherche la date de ce jours dans la plage séléctionnée avant
For Each rCell In Selection
If Not rCell.Value = Date Then '=Date pour comparer avec la date de jours
Rows(rCell.Row).Hidden = True
End If
Next
comme ca il prend juste la selection qui contien qlq chose et c beaucoup pluss rapide
Merci Beaucoup!!!!
Sheets("checks-sheet").Select
'selectionner la plage utilisée seulement
Range(Cells(2, 4), Cells(Rows.Count, 4).End(xlUp)).Select
'Boucle qui recherche la date de ce jours dans la plage séléctionnée avant
For Each rCell In Selection
If Not rCell.Value = Date Then '=Date pour comparer avec la date de jours
Rows(rCell.Row).Hidden = True
End If
Next
comme ca il prend juste la selection qui contien qlq chose et c beaucoup pluss rapide
Merci Beaucoup!!!!