OVH Cloud OVH Cloud

Format [hh]:mm

6 réponses
Avatar
Gil HASH
Bonsoir à tous
Je cherche l'équivalent du format d'affichage de cellule [hh]:mm avec la
fonction VBA Format(x,"yy")
J'ai bêtement essayé Format( x, "[hh]:mm") mais rien à faire, les crochets
ne sont pas reconnus.
Je suis sûr que vous connaissez la solution du problème qui m'embête depuis
quelques temps
A+

6 réponses

Avatar
Frédéric Sigonneau
Bonsoir,

La fonction Format ne reconnait pas l'utilisation des crochets droits dans les
formats. Il faut tout faire à la mimine...
Par exemple (Excel 2000 ou + récent requis avec cette solution) :

Sub test()
Dim h1, h2, H, M
h1 = "15:25"
h2 = "25:00"
H = CInt(Split(h1, ":")(0)) + CInt(Split(h2, ":")(0))
M = CInt(Split(h1, ":")(1)) + CInt(Split(h2, ":")(1))
MsgBox H & ":" & Format(M, "00")
End Sub

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

Bonsoir à tous
Je cherche l'équivalent du format d'affichage de cellule [hh]:mm avec la
fonction VBA Format(x,"yy")
J'ai bêtement essayé Format( x, "[hh]:mm") mais rien à faire, les crochets
ne sont pas reconnus.
Je suis sûr que vous connaissez la solution du problème qui m'embête depuis
quelques temps
A+




Avatar
GD
Bonsour ® Jean-Luc...
une solution que m'avait proposée Laurent Longre le 11/01/2000
http://minilien.com/?tfqBmrKd4X
'-----------------
Le code [h]:mm:ss est spécifique à Excel.
Tu ne peux pas l'utiliser avec la fonction VBA Format, qui dispose de ses
propres codes ne recoupant pas forcément ceux des cellules de feuilles de
calcul.
En l'occurence, bien que ce soit trés inélégant, tu pourrais utiliser :

Userform1.TextBox1.value =Evaluate ("TEXT(" &
application.Substitute(MaDurée, ",", ".") &",""[h]:mm:ss"")")

'!!!! l'instruction ci-dessus ne fait qu'une seule ligne
'-------------------------------------------------------------------
par contre la formulation ci-dessous fonctionne :
Cells(1,1).NumberFormat = "[h]:mm:ss;@"

@+

dans news:,
Gil HASH typed:
Bonsoir à tous
Je cherche l'équivalent du format d'affichage de cellule [hh]:mm avec
la fonction VBA Format(x,"yy")
J'ai bêtement essayé Format( x, "[hh]:mm") mais rien à faire, les
crochets ne sont pas reconnus.
Je suis sûr que vous connaissez la solution du problème qui m'embête
depuis quelques temps
A+


Avatar
AV
Avec des heures/minutes en A1 :

MsgBox [text(A1,"[hh]:mm")]

AV
Avatar
Bonjour
J'utilise votre solution par Evaluate("TEXT(" &
Application.Substitute(ActiveCell.Value, ",", ".")
& ",""[hh]:mm"")") et elle marche du tonnerre!
Cependant, y-a-t'il une solution si on veut un petit "h"
entre les heures et les minutes au lieu des deux points :

(je pinaille, je sais...)

GIL HASCH
Avatar
Alain CROS
Bonjour

TextBox1.Value = Application.Substitute(Evaluate("TEXT(" & _
Application.Substitute(ActiveCell.Value, ",", ".") & ",""[h]:mm"")"), ":", "h")

Alain CROS

a écrit dans le message de news: 189601c4a9d4$254cd650$

Bonjour
J'utilise votre solution par Evaluate("TEXT(" &
Application.Substitute(ActiveCell.Value, ",", ".")
& ",""[hh]:mm"")") et elle marche du tonnerre!
Cependant, y-a-t'il une solution si on veut un petit "h"
entre les heures et les minutes au lieu des deux points :

(je pinaille, je sais...)

GIL HASCH


Avatar
Modeste
Bonsour ® Jean-Luc ,
ou bien encore :
TextBox1.Value = Evaluate("TEXT(" &
Application.SubstituteActiveCell.Value, ",", ".")
& ",""[h]""""h""""mm"")")

mais peut-etre encore plus simplement :
Selection.NumberFormat = "[h]""h""mm"
TextBox1.Value = Selection.Text

la selection garde sa valeur interne (partie
entière,partie décimale)
la textbox1 reflete l'affichage cellule et vice-versa ...

;o)))


-----Message d'origine-----
Bonjour

TextBox1.Value = Application.Substitute(Evaluate("TEXT("
& _

Application.Substitute(ActiveCell.Value, ",", ".")
& ",""[h]:mm"")"), ":", "h")


Alain CROS

a écrit dans le
message de news: 189601c4a9d4$254cd650$


Bonjour
J'utilise votre solution par Evaluate("TEXT(" &
Application.Substitute(ActiveCell.Value, ",", ".")
& ",""[hh]:mm"")") et elle marche du tonnerre!
Cependant, y-a-t'il une solution si on veut un
petit "h"


entre les heures et les minutes au lieu des deux
points :



(je pinaille, je sais...)

GIL HASCH



.