Conversion

trucss
Messages postés
151
Date d'inscription
jeudi 17 février 2022
Statut
Membre
Dernière intervention
5 août 2022
- Modifié le 1 août 2022 à 11:37
trucss
Messages postés
151
Date d'inscription
jeudi 17 février 2022
Statut
Membre
Dernière intervention
5 août 2022
- 5 août 2022 à 08:57

Bonjour,

J'ai une variable de la forme hhmmss 

Je voudrais mettre dans une textbox ou autre au format heure en sachant que l'on peut avoir hmmss ou hss ..

Ou mettre un espace depuis la droite ex hh mm ss ou m ss ....

Merci

8 réponses

FRED92G
Messages postés
287
Date d'inscription
jeudi 24 mai 2012
Statut
Membre
Dernière intervention
13 août 2022

1 août 2022 à 14:06
Dim datejour As Date
        datejour = Date.Now
 Dim a As String = datejour
        a = Format(Now(), ("HH mm ss"))

voila ta solution

1
trucss
Messages postés
151
Date d'inscription
jeudi 17 février 2022
Statut
Membre
Dernière intervention
5 août 2022

Modifié le 1 août 2022 à 14:54

Merci mais la c'est pour la date du jour

j'ai une heure minute seconde dans la variable var qui peut etre de la forme 025025         2h 50min et 25 s

Dim tpsarret = Format(var, ("HH mm ss"))

J'ai un défaut sur var car c'est une variable

Au depart j'ai la DateTime.Now.ToString("HH:mm:ss") et j'ai une variable de la forme hhmmss et je fais la difference puis je voudrais l'afficher hh:mm:ss

0
vb95
Messages postés
2905
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
14 août 2022
154
1 août 2022 à 14:56

Bonjour 

On en revient encore aux bases du langage .

Dans 

Dim tpsarret = Format(var, ("HH mm ss"))

var est bien une variable mais de quel type ? Integer, String, Boleean, etc ....

Et tpsarret est de quel type lui ?

Lorsque l'on dimensionne une variable c'est pour lui donner un type .

Exemple : 

Dim NomRep as String = "Répertoire principal"

Là NomRep est de type String et on l'indique avec le mot clé "as" .


1
trucss
Messages postés
151
Date d'inscription
jeudi 17 février 2022
Statut
Membre
Dernière intervention
5 août 2022

1 août 2022 à 15:23
Dim tpsarret, var As String
Dim heurenow = DateTime.Now.ToString("HH:mm:ss")
Dim dateauformatheure = Replace(CStr(heurenow), ":", "")
 tpsarret = dateauformatheure - var

comment je peux separer la valeur du tpsarret pour affiche un truc comme ça 00 00 00 ou 00:00:00

0
vb95
Messages postés
2905
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
14 août 2022
154
Modifié le 1 août 2022 à 16:55

Bonjour

Reprenons votre code

Dim tpsarret, var As String
Dim heurenow = DateTime.Now.ToString("HH:mm:ss")
Dim dateauformatheure = Replace(CStr(heurenow), ":", "")
 tpsarret = dateauformatheure - var

1 ) heurenow et dateformatheure sont de quel type ?

Il faut TOUJOURS préciser le type de variable avec "as" .

On déclare une variable et on la dimensionne ( on lui donne un type ) .

tu en déduiras que CStr est inutile .

2) A la ligne 4 tu soustrais des chaines de caractères ( type String )

Cela revient à faire par exemple : 

dim Resultat as string = "Alain" - "Jean" 

Peux-tu me dire le résultat ?

La soustraction ne se fait que sur des valeurs numériques ou sur des valeurs de type DateTime et TimeSpan .

Plus d'information ici : https://plasserre.developpez.com/cours/vb-net/#LV-AB ( Recherchez dans la table des matières "Travaillez avec les dates"


0
Whismeril
Messages postés
17661
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
14 août 2022
612
Modifié le 1 août 2022 à 17:24

Depuis février, à chacune de tes 21 questions précédentes on t'as dit que

  • prendre 4 5 jours à apprendre les bases te serait bien plus profitable que perdre des heures sur des trucs aussi simples que calculer une durée (différence entre 2 datations et pas entre string, pour au moins la 50eme fois une string c'est du texte et rien d'autre) et en afficher le résultat.
  • ne plus utiliser de code vb6 dans ton code vb.net
  • Réfléchir a ce que tu fais


Quand on lit ça 

Dim tpsarret, var As String
Dim heurenow = DateTime.Now.ToString("HH:mm:ss")
Dim dateauformatheure = Replace(CStr(heurenow), ":", "")
 tpsarret = dateauformatheure - var

 je me dis que tu ne mérites plus qu'on perde du temps pour toi, puisque quoiqu'on te dise tu t'en moques et tu reviens avec une question aussi simple (c'est pas le mot exact, mais bon c'est pas poli)


Quand j'étais petit, la mer Morte n'était que malade.
George Burns

0
trucss
Messages postés
151
Date d'inscription
jeudi 17 février 2022
Statut
Membre
Dernière intervention
5 août 2022

2 août 2022 à 07:40

Pour soustraire deux valeurs pas de souci avec le datetime mais la j'ai une valeur de type datetime et une autre integer

datetime( 12:20:30)   ,  122030

Il faut que je mette des : sur la deuxieme variable pour pouvoir faire la soustraction car c'est 2 formats différents.

0
Whismeril
Messages postés
17661
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
14 août 2022
612 > trucss
Messages postés
151
Date d'inscription
jeudi 17 février 2022
Statut
Membre
Dernière intervention
5 août 2022

Modifié le 2 août 2022 à 17:35

Non, ce code ne montre pas tout ce que tu racontes.

Ce n'est ni un datetime ni un integer mais des strings que tu construis à partir de datetime (et encore tu construis ça n'importe comment). Et une string c'est du texte nom de nom et du texte on ne fait pas de calculs avec.

C'est comme si tu écrivais "Ferry" sur une feuille et qui tu essayais d'y embarquer ta voiture pour traverser la mer... Ce n'est que du texte, une représentation graphique, pas l'objet utilisable.

Donc quand tu montreras un test de codes

  • où tu ne construis pas de string, pour essayer de t'en servir comme d'un objet utilisable
  • où il n'y a pas de vb6
  • où les variables sont correctement nommées (var c'est nul comme nom....)
  • où les variables sont correctement déclarées (en application de Option Strict et Option Explicit)
  • où ce qui aura été tenté montrera que tu auras enfin fait l'effort d'apprendre les bases ( depuis 6 mois qu'on te le dit)
  • bref que tu n'attends plus de nous qu'on fasse le B A BA à ta place

Là peut-être que je referai des efforts pour toi... Et j'invite les autres à en faire autant

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
FRED92G
Messages postés
287
Date d'inscription
jeudi 24 mai 2012
Statut
Membre
Dernière intervention
13 août 2022

2 août 2022 à 11:18

sur se poste il traite justement la soustraction des heure inspire toi de sa.

les point comme tu dit entre les chiffre son des  separateur.

https://codes-sources.commentcamarche.net/forum/affich-1623981-soustraire-deux-heures

0
dysorthographie
Messages postés
37
Date d'inscription
jeudi 27 janvier 2022
Statut
Membre
Dernière intervention
7 août 2022
3
Modifié le 2 août 2022 à 12:00

Bonjour,

Dim dte As DateTime = DateTime.Parse(122030.ToString("00:00:00"))

 tu devrais supprimer Visual Basic de tes références ça t'obligerait à coder en vrai VB.NET!

0
trucss
Messages postés
151
Date d'inscription
jeudi 17 février 2022
Statut
Membre
Dernière intervention
5 août 2022

2 août 2022 à 15:31

Merci

Impossible de le désactiver

0
trucss
Messages postés
151
Date d'inscription
jeudi 17 février 2022
Statut
Membre
Dernière intervention
5 août 2022

2 août 2022 à 16:08

Je me fais peut etre mal comprendre mais j'ai l'heure du jour ça ok

 Dim heurenow = DateTime.Now.ToString("HH:mm:ss")

Ensuite je récupère une valeur dans un fichier .TXT 

Split(fichier1, ";")(1) qui est biensur de type string ça je sais .....

et pour faire DateDiff  il me les faut au même format .

La variable string et toujours (hhmmss)

0
Whismeril
Messages postés
17661
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
14 août 2022
612 > trucss
Messages postés
151
Date d'inscription
jeudi 17 février 2022
Statut
Membre
Dernière intervention
5 août 2022

2 août 2022 à 19:43

Je me fais peut etre mal comprendre mais j'ai l'heure du jour ça ok
 

Oui c'est certain car le code que tu montres ne donne pas l'heure du jour mais un texte! 
Et en plus l'heure du jour ça n'a aucun sens, chaque jour l'heure varie de 00:00:00.000 à 23:59:59.999. C'est le principe même du temps ça change constamment.

L'heure à l’instant T c'est

Dim datatation as DateTime = DateTime.Now

 ET PAS DE STRING!!!

0
dysorthographie
Messages postés
37
Date d'inscription
jeudi 27 janvier 2022
Statut
Membre
Dernière intervention
7 août 2022
3
Modifié le 2 août 2022 à 18:16

dommage pour les références, car VS t'aurait mis des claques derrière la tête  à chaque emploi du VB6 

ça aurait permis à vb95 et Whismeril de se reposer les neurones!

 Dim StringDate As String = "122030"
 Dim Undate As DateTime = DateTime.ParseExact(StringDate, "hhmmss", Nothing)
0
Whismeril
Messages postés
17661
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
14 août 2022
612
Modifié le 2 août 2022 à 20:05

Salut
C'est pas les neurones qu'il use c'est la patience....

7 mois qu'il pose des questions sur les types de bases et qu'il ne tient jamais compte de ce qu'on lui dit.....

0
vb95
Messages postés
2905
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
14 août 2022
154 > Whismeril
Messages postés
17661
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
14 août 2022

2 août 2022 à 20:11

Salut à Whismeril et dysorthographie

Rassurez vous dysorthographie ! Nos neurones à Whismeril et moi-même ont été bien plus rudement mis à contribution dans certains projets que nous avons menés séparément ou ensemble .

0
trucss
Messages postés
151
Date d'inscription
jeudi 17 février 2022
Statut
Membre
Dernière intervention
5 août 2022

5 août 2022 à 08:57

Bonjour je veux bien supprimer le VB6 mais cela ne fonctionne pas.

Merci cela fonctionne, je comprend mieux le principe maintenant.

DateTime.ParseExact
0