Recuperer les deux premier chiffre d'une variable dans un autre [Résolu]

Signaler
Messages postés
19
Date d'inscription
mercredi 28 avril 2004
Statut
Membre
Dernière intervention
5 septembre 2005
-
Messages postés
4172
Date d'inscription
mercredi 30 juillet 2003
Statut
Membre
Dernière intervention
9 juin 2006
-
faraday
bonjour j'ai un problem je veux recuperer les deux premiers chiffre d'une variable dans un notre variable.
exemple
dim g as interger
g=12558
maintenant je veux recuperer le 1 et le 2 dans une autre variable

7 réponses

Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
30
Bonjour



Pas plus simple que ça:



Dim sg as String

sg = Cstr(g)

Dim tt as integer

tt = cint(left(sg,2))


ChRB

Merci de cliquer sur "Réponse acceptée" si une réponse vous convient.
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 123 internautes nous ont dit merci ce mois-ci

Messages postés
3140
Date d'inscription
vendredi 14 mai 2004
Statut
Membre
Dernière intervention
11 mars 2019
27
MsgBox Left$(CStr(g), 2)

'conversion implicite

MsgBox Left$(g, 2)


Daniel
Messages postés
30
Date d'inscription
vendredi 20 mai 2005
Statut
Membre
Dernière intervention
18 août 2005

Salut.
Je suis débutant et voici un code que g déjà utilisé.

1.Place l'ensemble de ta valeur dans charsInFile%(dans mon ex c le texte contenue dans txtNote, mais sa peut etre une variable aussi).
2.La boucle permet de récupérer un par un les caractère.
3.Si tu veut seulement les deux premier, alors remplace "For i% 1 To charsInFile%", par "For i% 1 To 2"


charsInFile% = Len(txtNote.Text)

For i% = 1 To charsInFile%
letter$ = Mid(txtNote.Text, i%, 1).


Merci de confirmer si cela te convient. Sinon tiens moi au courant.

Jonathan
Messages postés
4172
Date d'inscription
mercredi 30 juillet 2003
Statut
Membre
Dernière intervention
9 juin 2006
23
tu peux passer par une variable temporaire de type string et en extraire les deux premiers caractères via la fonction Left$() et reconvertir le résultat en Integer, comme ceci ...

Dim i As Integer, j As Integer

i = 12558
j = CInt(left$(CStr(i), 2)

ATTENTION ! Ce code ne vérifie pas que i est bien >= à 10. En effet, si i contient uen valeur ne comportant pas au moins 2 chiffres, l'appel à la
fonction Left$( ...,2) va généré une erreur. A toi de voir si tu dois veiller au grain ou pas !!

Christophe
Messages postés
3140
Date d'inscription
vendredi 14 mai 2004
Statut
Membre
Dernière intervention
11 mars 2019
27
he non il n'y aura pas d'erreur !

il y aura au moins un zéro et un seul chiffre sera revoyé

par contre si négatif il y aura le signe moins

Daniel
Messages postés
1812
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
26 octobre 2010
1
Violent Ken

Le plus simple , c'est
g = 12558
a = Val(Left(g, 2))

@+
Messages postés
4172
Date d'inscription
mercredi 30 juillet 2003
Statut
Membre
Dernière intervention
9 juin 2006
23
Gobillot < Toutes mes excuses, j'étais parsuadé que Left() etait sensible à ce genre de choses ... Me coucherais moins C _ N ce soir ...

Christophe