Format heure

Bonjour à tous,

Devant prendre en compte que les arrêts supérieur à une minute, j'ai essayé cette macro

Dim DLig As Long, i As Long

Application.ScreenUpdating = False

DLig = Sheets("Alarms").Range("I" & Rows.Count).End(xlUp).Row

For i = DLig To 2 Step -1

If Cells(i, 9) <= ("0:01:00") Then Rows(i).EntireRow.Delete '

Next i

Application.ScreenUpdating = True

elle ne supprime que les arrêts d'une seconde, l'erreur vient peut être de mon format.

j'ai essayé plein de chose sans succès

Merci

8forum.xlsx (21.82 Ko)

Bonsoir,

Pour Excel, une minute vaut : mn=1/1440 soit 0,000694 donc, essai en utilisant la propriété « Value2 » :

If Cells(i, 9).Value2 <= 1/1440 Then...

Bonsoir Theze,

parfait, la macro fonctionne bien.

Une question

pourquoi value 2 ?

Merci

Bonsoir,

Les données de type Date couvrent les valeurs dates et heures, ce sont des données numériques dotées d'attributs permettant de les identifier sous diverses formes textuelles normalisées et différenciées selon les paramètres régionaux du système. La date constitue la partie entière du nombre, l'heure la partie décimale, l'unité est le jour (=24h).

Value2 est une porpriété de l'objet Range qui renvoie dans le cas général la même chose que Value, mais pour le type Date (donc les heures également) dépouille la valeur renvoyée de ces attributs spécifiques pour la limiter à la valeur numérique [fait la même chose pour le type Currency (Monétaire)].

Bien joué par Theze !

Merci à tous.

Rechercher des sujets similaires à "format heure"