j'ai trouvé dans le groupe cette formule :
=ENT(A1)&" heures , "&ENT(60*MOD(A1;1))&" minutes et
"&ARRONDI(60*MOD(60*MOD(A1;1);1);0)&" secondes"
j'aimerai la transformer en vba, j'ai une sub qui décrémente
toute les secondes la valeur "1" à une variable publique
contenant le nombre de secondes totales.
pour le nb d'heures ok int(nombretotal / 3600 )
Mais pour le nombre de minutes je m'y perd d'autend
plus que ces variables sont au format long ....
j'ai trouvé dans le groupe cette formule :
=ENT(A1)&" heures , "&ENT(60*MOD(A1;1))&" minutes et
"&ARRONDI(60*MOD(60*MOD(A1;1);1);0)&" secondes"
j'aimerai la transformer en vba, j'ai une sub qui décrémente
toute les secondes la valeur "1" à une variable publique
contenant le nombre de secondes totales.
pour le nb d'heures ok int(nombretotal / 3600 )
Mais pour le nombre de minutes je m'y perd d'autend
plus que ces variables sont au format long ....
j'ai trouvé dans le groupe cette formule :
=ENT(A1)&" heures , "&ENT(60*MOD(A1;1))&" minutes et
"&ARRONDI(60*MOD(60*MOD(A1;1);1);0)&" secondes"
j'aimerai la transformer en vba, j'ai une sub qui décrémente
toute les secondes la valeur "1" à une variable publique
contenant le nombre de secondes totales.
pour le nb d'heures ok int(nombretotal / 3600 )
Mais pour le nombre de minutes je m'y perd d'autend
plus que ces variables sont au format long ....
Bonjour,
j'ai trouvé dans le groupe cette formule :
=ENT(A1)&" heures ,"&ENT(60*MOD(A1;1))&" minutes et
"&ARRONDI(60*MOD(60*MOD(A1;1);1);0)&" secondes"
j'aimerai la transformer en vba, j'ai une sub qui décrémente
toute les secondes la valeur "1" à une variable publique
contenant le nombre de secondes totales.
pour le nb d'heures ok int(nombretotal / 3600 )
Mais pour le nombre de minutes je m'y perd d'autend
plus que ces variables sont au format long ....
merci pour votre aide.
José
Bonjour,
j'ai trouvé dans le groupe cette formule :
=ENT(A1)&" heures ,"&ENT(60*MOD(A1;1))&" minutes et
"&ARRONDI(60*MOD(60*MOD(A1;1);1);0)&" secondes"
j'aimerai la transformer en vba, j'ai une sub qui décrémente
toute les secondes la valeur "1" à une variable publique
contenant le nombre de secondes totales.
pour le nb d'heures ok int(nombretotal / 3600 )
Mais pour le nombre de minutes je m'y perd d'autend
plus que ces variables sont au format long ....
merci pour votre aide.
José
Bonjour,
j'ai trouvé dans le groupe cette formule :
=ENT(A1)&" heures ,"&ENT(60*MOD(A1;1))&" minutes et
"&ARRONDI(60*MOD(60*MOD(A1;1);1);0)&" secondes"
j'aimerai la transformer en vba, j'ai une sub qui décrémente
toute les secondes la valeur "1" à une variable publique
contenant le nombre de secondes totales.
pour le nb d'heures ok int(nombretotal / 3600 )
Mais pour le nombre de minutes je m'y perd d'autend
plus que ces variables sont au format long ....
merci pour votre aide.
José
bonjour José,
Range("A1") = 32767 '32767 est le nombre de secondes maximum pour la fonction TimeSerial sur xl2002
Range("A2") = Format(TimeSerial(0, 0, Range("A1")), "hh:mm:ss")
--
isabelle
Le 2011-06-21 11:12, Alfred WALLACE a écrit :
> Bonjour,
> j'ai trouvé dans le groupe cette formule :
> =ENT(A1)&" heures ,"&ENT(60*MOD(A1;1))&" minutes et
> "&ARRONDI(60*MOD(60*MOD(A1;1);1);0)&" secondes"
> j'aimerai la transformer en vba, j'ai une sub qui décrémente
> toute les secondes la valeur "1" à une variable publique
> contenant le nombre de secondes totales.
> pour le nb d'heures ok int(nombretotal / 3600 )
> Mais pour le nombre de minutes je m'y perd d'autend
> plus que ces variables sont au format long ....
> merci pour votre aide.
> José
bonjour José,
Range("A1") = 32767 '32767 est le nombre de secondes maximum pour la fonction TimeSerial sur xl2002
Range("A2") = Format(TimeSerial(0, 0, Range("A1")), "hh:mm:ss")
--
isabelle
Le 2011-06-21 11:12, Alfred WALLACE a écrit :
> Bonjour,
> j'ai trouvé dans le groupe cette formule :
> =ENT(A1)&" heures ,"&ENT(60*MOD(A1;1))&" minutes et
> "&ARRONDI(60*MOD(60*MOD(A1;1);1);0)&" secondes"
> j'aimerai la transformer en vba, j'ai une sub qui décrémente
> toute les secondes la valeur "1" à une variable publique
> contenant le nombre de secondes totales.
> pour le nb d'heures ok int(nombretotal / 3600 )
> Mais pour le nombre de minutes je m'y perd d'autend
> plus que ces variables sont au format long ....
> merci pour votre aide.
> José
bonjour José,
Range("A1") = 32767 '32767 est le nombre de secondes maximum pour la fonction TimeSerial sur xl2002
Range("A2") = Format(TimeSerial(0, 0, Range("A1")), "hh:mm:ss")
--
isabelle
Le 2011-06-21 11:12, Alfred WALLACE a écrit :
> Bonjour,
> j'ai trouvé dans le groupe cette formule :
> =ENT(A1)&" heures ,"&ENT(60*MOD(A1;1))&" minutes et
> "&ARRONDI(60*MOD(60*MOD(A1;1);1);0)&" secondes"
> j'aimerai la transformer en vba, j'ai une sub qui décrémente
> toute les secondes la valeur "1" à une variable publique
> contenant le nombre de secondes totales.
> pour le nb d'heures ok int(nombretotal / 3600 )
> Mais pour le nombre de minutes je m'y perd d'autend
> plus que ces variables sont au format long ....
> merci pour votre aide.
> José
bonjour José,
Range("A1") = 32767 '32767 est le nombre de secondes maximum pour la
fonction TimeSerial sur xl2002
Range("A2") = Format(TimeSerial(0, 0, Range("A1")), "hh:mm:ss")
--
isabelle
Le 2011-06-21 11:12, Alfred WALLACE a écrit :
> Bonjour,
> j'ai trouvé dans le groupe cette formule :
> =ENT(A1)&" heures ,"&ENT(60*MOD(A1;1))&" minutes et
> "&ARRONDI(60*MOD(60*MOD(A1;1);1);0)&" secondes"
> j'aimerai la transformer en vba, j'ai une sub qui décrémente
> toute les secondes la valeur "1" à une variable publique
> contenant le nombre de secondes totales.
> pour le nb d'heures ok int(nombretotal / 3600 )
> Mais pour le nombre de minutes je m'y perd d'autend
> plus que ces variables sont au format long ....
> merci pour votre aide.
> José
bonjour José,
Range("A1") = 32767 '32767 est le nombre de secondes maximum pour la
fonction TimeSerial sur xl2002
Range("A2") = Format(TimeSerial(0, 0, Range("A1")), "hh:mm:ss")
--
isabelle
Le 2011-06-21 11:12, Alfred WALLACE a écrit :
> Bonjour,
> j'ai trouvé dans le groupe cette formule :
> =ENT(A1)&" heures ,"&ENT(60*MOD(A1;1))&" minutes et
> "&ARRONDI(60*MOD(60*MOD(A1;1);1);0)&" secondes"
> j'aimerai la transformer en vba, j'ai une sub qui décrémente
> toute les secondes la valeur "1" à une variable publique
> contenant le nombre de secondes totales.
> pour le nb d'heures ok int(nombretotal / 3600 )
> Mais pour le nombre de minutes je m'y perd d'autend
> plus que ces variables sont au format long ....
> merci pour votre aide.
> José
bonjour José,
Range("A1") = 32767 '32767 est le nombre de secondes maximum pour la
fonction TimeSerial sur xl2002
Range("A2") = Format(TimeSerial(0, 0, Range("A1")), "hh:mm:ss")
--
isabelle
Le 2011-06-21 11:12, Alfred WALLACE a écrit :
> Bonjour,
> j'ai trouvé dans le groupe cette formule :
> =ENT(A1)&" heures ,"&ENT(60*MOD(A1;1))&" minutes et
> "&ARRONDI(60*MOD(60*MOD(A1;1);1);0)&" secondes"
> j'aimerai la transformer en vba, j'ai une sub qui décrémente
> toute les secondes la valeur "1" à une variable publique
> contenant le nombre de secondes totales.
> pour le nb d'heures ok int(nombretotal / 3600 )
> Mais pour le nombre de minutes je m'y perd d'autend
> plus que ces variables sont au format long ....
> merci pour votre aide.
> José
Bonjour,
si tu affiches dans une cellule Excel, pourquoi ne pas faire :
=TOTSECONDES/86400 avec un format hh:mm:ss
Michel
"Alfred WALLACE" a écrit dans le message de news:
Bonjour Isabelle et aussi à tous ceux qui m'ont répondu.
Je me suis mal exprimé, et je pense que la solution
à mon soucis est beaucoup simple que ce que pensait !
En effet, je saisis dans un formulaire
des champs HH, MM et je convertit le tout
en secondes TOTSECONDES = HH * 3600 + MM * 60
Ensuite, dans un timer, je décrémente TOTSECONDES de 1
toutes les secondes.
et je voulais reconstuter une chaine : xx HH xx MM xx SEC toutes
les secondes de façon à ce que l'on voit le temps passer.
grace à vos remarques et à quelques essais, j'ai fait ceci :
pour les heures ENT((TOTSECONDES/3600))
pour les minutes ENT(((TOTSECONDES/3600)-ENT((TOTSECONDES/3600)))*60)
pour les secondes :
((((TOTSECONDES/3600)-ENT((TOTSECONDES/3600)))*60) - _
ENT(((TOTSECONDES/3600)-ENT((TOTSECONDES/3600)))*60))*60
en fait "totsecondes" n'est pas du tout une valeur "serial time" de
excel, mais
simplement un nombre qui contiend des secondes.
j'ai déclaré totsecondes en tant que "long" car c'est un nombre
entier, mais
est ce que çà gène d'avoir un nombre à virgule pour les résultats
intermédiaires ?
en effet, 2 heures moins 1 seconde, çà fait 1h59 minutes... et là
7199 secondes
divisé par 3600 çà fait un nombre à virgules.
Merci encore pour votre aide.
On 22 juin, 06:59, isabelle wrote:bonjour José,
Range("A1") = 32767 '32767 est le nombre de secondes maximum pour la
fonction TimeSerial sur xl2002
Range("A2") = Format(TimeSerial(0, 0, Range("A1")), "hh:mm:ss")
--
isabelle
Le 2011-06-21 11:12, Alfred WALLACE a écrit :
> Bonjour,
> j'ai trouvé dans le groupe cette formule :
> =ENT(A1)&" heures ,"&ENT(60*MOD(A1;1))&" minutes et
> "&ARRONDI(60*MOD(60*MOD(A1;1);1);0)&" secondes"
> j'aimerai la transformer en vba, j'ai une sub qui décrémente
> toute les secondes la valeur "1" à une variable publique
> contenant le nombre de secondes totales.
> pour le nb d'heures ok int(nombretotal / 3600 )
> Mais pour le nombre de minutes je m'y perd d'autend
> plus que ces variables sont au format long ....
> merci pour votre aide.
> José
Bonjour,
si tu affiches dans une cellule Excel, pourquoi ne pas faire :
=TOTSECONDES/86400 avec un format hh:mm:ss
Michel
"Alfred WALLACE" <jose6a@gmail.com> a écrit dans le message de news:
4609ad8f-c436-49f0-a618-15fba25403ff@m18g2000vbl.googlegroups.com...
Bonjour Isabelle et aussi à tous ceux qui m'ont répondu.
Je me suis mal exprimé, et je pense que la solution
à mon soucis est beaucoup simple que ce que pensait !
En effet, je saisis dans un formulaire
des champs HH, MM et je convertit le tout
en secondes TOTSECONDES = HH * 3600 + MM * 60
Ensuite, dans un timer, je décrémente TOTSECONDES de 1
toutes les secondes.
et je voulais reconstuter une chaine : xx HH xx MM xx SEC toutes
les secondes de façon à ce que l'on voit le temps passer.
grace à vos remarques et à quelques essais, j'ai fait ceci :
pour les heures ENT((TOTSECONDES/3600))
pour les minutes ENT(((TOTSECONDES/3600)-ENT((TOTSECONDES/3600)))*60)
pour les secondes :
((((TOTSECONDES/3600)-ENT((TOTSECONDES/3600)))*60) - _
ENT(((TOTSECONDES/3600)-ENT((TOTSECONDES/3600)))*60))*60
en fait "totsecondes" n'est pas du tout une valeur "serial time" de
excel, mais
simplement un nombre qui contiend des secondes.
j'ai déclaré totsecondes en tant que "long" car c'est un nombre
entier, mais
est ce que çà gène d'avoir un nombre à virgule pour les résultats
intermédiaires ?
en effet, 2 heures moins 1 seconde, çà fait 1h59 minutes... et là
7199 secondes
divisé par 3600 çà fait un nombre à virgules.
Merci encore pour votre aide.
On 22 juin, 06:59, isabelle <i...@v.org> wrote:
bonjour José,
Range("A1") = 32767 '32767 est le nombre de secondes maximum pour la
fonction TimeSerial sur xl2002
Range("A2") = Format(TimeSerial(0, 0, Range("A1")), "hh:mm:ss")
--
isabelle
Le 2011-06-21 11:12, Alfred WALLACE a écrit :
> Bonjour,
> j'ai trouvé dans le groupe cette formule :
> =ENT(A1)&" heures ,"&ENT(60*MOD(A1;1))&" minutes et
> "&ARRONDI(60*MOD(60*MOD(A1;1);1);0)&" secondes"
> j'aimerai la transformer en vba, j'ai une sub qui décrémente
> toute les secondes la valeur "1" à une variable publique
> contenant le nombre de secondes totales.
> pour le nb d'heures ok int(nombretotal / 3600 )
> Mais pour le nombre de minutes je m'y perd d'autend
> plus que ces variables sont au format long ....
> merci pour votre aide.
> José
Bonjour,
si tu affiches dans une cellule Excel, pourquoi ne pas faire :
=TOTSECONDES/86400 avec un format hh:mm:ss
Michel
"Alfred WALLACE" a écrit dans le message de news:
Bonjour Isabelle et aussi à tous ceux qui m'ont répondu.
Je me suis mal exprimé, et je pense que la solution
à mon soucis est beaucoup simple que ce que pensait !
En effet, je saisis dans un formulaire
des champs HH, MM et je convertit le tout
en secondes TOTSECONDES = HH * 3600 + MM * 60
Ensuite, dans un timer, je décrémente TOTSECONDES de 1
toutes les secondes.
et je voulais reconstuter une chaine : xx HH xx MM xx SEC toutes
les secondes de façon à ce que l'on voit le temps passer.
grace à vos remarques et à quelques essais, j'ai fait ceci :
pour les heures ENT((TOTSECONDES/3600))
pour les minutes ENT(((TOTSECONDES/3600)-ENT((TOTSECONDES/3600)))*60)
pour les secondes :
((((TOTSECONDES/3600)-ENT((TOTSECONDES/3600)))*60) - _
ENT(((TOTSECONDES/3600)-ENT((TOTSECONDES/3600)))*60))*60
en fait "totsecondes" n'est pas du tout une valeur "serial time" de
excel, mais
simplement un nombre qui contiend des secondes.
j'ai déclaré totsecondes en tant que "long" car c'est un nombre
entier, mais
est ce que çà gène d'avoir un nombre à virgule pour les résultats
intermédiaires ?
en effet, 2 heures moins 1 seconde, çà fait 1h59 minutes... et là
7199 secondes
divisé par 3600 çà fait un nombre à virgules.
Merci encore pour votre aide.
On 22 juin, 06:59, isabelle wrote:bonjour José,
Range("A1") = 32767 '32767 est le nombre de secondes maximum pour la
fonction TimeSerial sur xl2002
Range("A2") = Format(TimeSerial(0, 0, Range("A1")), "hh:mm:ss")
--
isabelle
Le 2011-06-21 11:12, Alfred WALLACE a écrit :
> Bonjour,
> j'ai trouvé dans le groupe cette formule :
> =ENT(A1)&" heures ,"&ENT(60*MOD(A1;1))&" minutes et
> "&ARRONDI(60*MOD(60*MOD(A1;1);1);0)&" secondes"
> j'aimerai la transformer en vba, j'ai une sub qui décrémente
> toute les secondes la valeur "1" à une variable publique
> contenant le nombre de secondes totales.
> pour le nb d'heures ok int(nombretotal / 3600 )
> Mais pour le nombre de minutes je m'y perd d'autend
> plus que ces variables sont au format long ....
> merci pour votre aide.
> José
Je me suis mal exprimé, et je pense que la solution
à mon soucis est beaucoup simple que ce que pensait !
En effet, je saisis dans un formulaire
des champs HH, MM et je convertit le tout
en secondes TOTSECONDES = HH * 3600 + MM * 60
Ensuite, dans un timer, je décrémente TOTSECONDES de 1
toutes les secondes.
et je voulais reconstuter une chaine : xx HH xx MM xx SEC toutes
les secondes de façon à ce que l'on voit le temps passer.
Je me suis mal exprimé, et je pense que la solution
à mon soucis est beaucoup simple que ce que pensait !
En effet, je saisis dans un formulaire
des champs HH, MM et je convertit le tout
en secondes TOTSECONDES = HH * 3600 + MM * 60
Ensuite, dans un timer, je décrémente TOTSECONDES de 1
toutes les secondes.
et je voulais reconstuter une chaine : xx HH xx MM xx SEC toutes
les secondes de façon à ce que l'on voit le temps passer.
Je me suis mal exprimé, et je pense que la solution
à mon soucis est beaucoup simple que ce que pensait !
En effet, je saisis dans un formulaire
des champs HH, MM et je convertit le tout
en secondes TOTSECONDES = HH * 3600 + MM * 60
Ensuite, dans un timer, je décrémente TOTSECONDES de 1
toutes les secondes.
et je voulais reconstuter une chaine : xx HH xx MM xx SEC toutes
les secondes de façon à ce que l'on voit le temps passer.