Insérer un caractère dans une chaine [Résolu]

Signaler
Messages postés
745
Date d'inscription
mardi 25 mars 2003
Statut
Membre
Dernière intervention
14 juillet 2015
-
Messages postés
745
Date d'inscription
mardi 25 mars 2003
Statut
Membre
Dernière intervention
14 juillet 2015
-
Salut, je ne sais pas comment insérer un caractère dans une chaine et je ne trouve pas. Il n'y a que des remplacements de caractères existants, ce genre de trucs.... Ce serait ça :

Label1.caption = "183439"
J'aimerais insérer ":" dedans pour obtenir :
Label1.caption = "18:34:39"

Genre mettre ":" en position "2" et "5" (je pars d'une position "0")... dan cette chaîne donc... Il n'y aurait que des chiffres donc, pas de lettre à l'origine...

Si quelqu'un sait comment faire ça serait tip top !

Merci...

7 réponses

Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
1) Sous VB6, hein ... (ne te trompe pas la prochaine fois...)...
2) tu t'es sûrement précipité pour savoir comment fonctionne Formt (dans ton aide en ligne) toi ...

Regarde :

MsgBox Format("010101", "0#:##:##")
Messages postés
1229
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
16 juin 2009
1
Bonjour,

Utilise les fonctions left, right et mid.
Syntaxe
Mid(string, start[, length])La syntaxe de la fonction Mid comprend les éléments suivants :

élément, Description, ----
string, [javascript:alink_4.Click() arguments nommés] suivants :

Élément, Description, ----
string, <object id= "alink_5" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"></object>[javascript:alink_7.Click() Expression numérique] indiquant le nombre de caractères à renvoyer. Si vous indiquez la valeur 0, une chaîne de longueur nulle ("") est renvoyée. Si vous indiquez une valeur supérieure ou égale au nombre de caractères contenus dans l'argument string, la totalité de la chaîne est renvoyée.

Syntaxe

Right( string , length)

La syntaxe de la fonction Right comprend les
<object id ="alink_4" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"></object>[javascript:alink_4.Click() arguments nommés] suivants :

Élément, Description, ----
string, <object id="alink_5" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"></object>[javascript:alink_7.Click() Expression numérique] indiquant le nombre de caractères à renvoyer. Si la valeur est 0, une chaîne de longueur nulle est renvoyée. Si cette valeur est supérieure ou égale au nombre de caractères contenus dans l'argument string, la totalité de la chaîne est renvoyée.

Bon courage...

S.L.B.
<hr />-- Le règlement tu liras -- Des recherches tu feras -- Le style SMS tu banniras --
-- De la validation pertinente tu feras -- Du respect tu auras -- <
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Bonjour,
Pourquoi serait-ce si complique de faire sous VB.Net ce que VB6 fait à l'aise ainsi :

toto = "183439"
MsgBox Format(toto, "##:##:##")

Vive VB6, alors ... et a fuera VB.Net (que je ne connais pas...)
Messages postés
107
Date d'inscription
samedi 25 novembre 2000
Statut
Membre
Dernière intervention
4 mai 2013

String.Format existe aussi en .NET en de nombreuses surcharges, donc un peu de recherche pour trouver son bonheur
Messages postés
33
Date d'inscription
samedi 15 décembre 2007
Statut
Membre
Dernière intervention
11 août 2010

Il me semble qu'avec la fonction Insert() tu dois pouvoir le faire :)
Exemple ici pour ajouter des tirets :
Dim MyStr as String = "JoLuluDan"
MyStr.Insert(2,"-")
MyStr.Insert(6,"-")
Après opération, la chaine vaut "Jo-Lulu-Dan"

Par contre je ne sais pas si on part de 0 ou de 1, à toi de vérifier :)

Cyril
Messages postés
745
Date d'inscription
mardi 25 mars 2003
Statut
Membre
Dernière intervention
14 juillet 2015

euh... merci pour vos réponses mais je viens de m'apercevoir que je me suis gourré de catégorie là... c du vb6, pas du .net ou vb2005, quoi qu'il en soit, le coup de :

label1 = format(label1, ("##:##:##"))

fonctionne pil poil, sauf que si y'a un zéro en première position il est supp'.
Alors j'ai fait genre
if Len(label1) 7 then label1 "0" & label1

Ca marche...

mais si j'ai "000001" ça me fait "::1"

...
Messages postés
745
Date d'inscription
mardi 25 mars 2003
Statut
Membre
Dernière intervention
14 juillet 2015

Ben vi, j'ai zieuté un peu partout. Merci pour la re-réponse jmfmarques !