Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Date

5 réponses
Avatar
caroual
Bonsoir,
Dans une colonne j'ai des dates et heures, je voudrais garder les lignes
où les heures sont les plus proches de 5h, 13h et 21h. Je vais faire
une macro et je voudrais savoir comment extraire juste l'heure de ma
cellule.
Ex : en a1 j'ai 19/3 5:00 je voudrais extraire toto= heure et minute de
ma cellule. Je pense qu'il doit y avoir un moyen plus simple que
hour(a1)&"/"& minute(a1)
Merci pour une aide
Caroual2@wanadoo.fr

5 réponses

Avatar
Frédéric Sigonneau
Bonsoir,

Tu peux utiliser Evaluate :

Sub testtt()
Dim D As Double
D = [A1 - Int(A1)]
MsgBox Format(D, "h:mm")
End Sub

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !

caroual a écrit:
Bonsoir,
Dans une colonne j'ai des dates et heures, je voudrais garder les lignes
où les heures sont les plus proches de 5h, 13h et 21h. Je vais faire
une macro et je voudrais savoir comment extraire juste l'heure de ma
cellule.
Ex : en a1 j'ai 19/3 5:00 je voudrais extraire toto= heure et minute de
ma cellule. Je pense qu'il doit y avoir un moyen plus simple que
hour(a1)&"/"& minute(a1)
Merci pour une aide



Avatar
caroual
Merci, c'est ok ca marche comme tu l'as écrit mais j'ai essayé de
l'écrire comme ceci et il doit y avoir un pb cela ne marche pas

D = [(ActiveCell.Value)-int(activecell.value)]

Bonsoir,

Tu peux utiliser Evaluate :

Sub testtt()
Dim D As Double
D = [A1 - Int(A1)]
MsgBox Format(D, "h:mm")
End Sub

FS


Avatar
FxM
Bonsoir,

=mod(A1;1) à mettre au format hh"/"mm

@+
FxM (qui n'a pas tout compris sur le format)



caroual wrote:

Bonsoir,
Dans une colonne j'ai des dates et heures, je voudrais garder les lignes
où les heures sont les plus proches de 5h, 13h et 21h. Je vais faire
une macro et je voudrais savoir comment extraire juste l'heure de ma
cellule.
Ex : en a1 j'ai 19/3 5:00 je voudrais extraire toto= heure et minute de
ma cellule. Je pense qu'il doit y avoir un moyen plus simple que
hour(a1)&"/"& minute(a1)
Merci pour une aide



Avatar
Frédéric Sigonneau
Re,

L'écriture 'raccourcie' d'Evaluate (les crochets) n'accepte pas cette syntaxe.
Utilise plutôt :

D=Evaluate(ActiveCell.Value - Int(ActiveCell.Value))

FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !

caroual a écrit:
Merci, c'est ok ca marche comme tu l'as écrit mais j'ai essayé de
l'écrire comme ceci et il doit y avoir un pb cela ne marche pas

D = [(ActiveCell.Value)-int(activecell.value)]


Bonsoir,

Tu peux utiliser Evaluate :

Sub testtt()
Dim D As Double
D = [A1 - Int(A1)]
MsgBox Format(D, "h:mm")
End Sub

FS





Avatar
caroual
Merci c'est OK