String, integer ?!

Résolu
gribouillex Messages postés 172 Date d'inscription lundi 10 octobre 2005 Statut Membre Dernière intervention 16 mai 2011 - 17 août 2006 à 14:25
gribouillex Messages postés 172 Date d'inscription lundi 10 octobre 2005 Statut Membre Dernière intervention 16 mai 2011 - 17 août 2006 à 15:10
Bonjour

J'ai une question toute bête, je cherche à chopper une valeur numérique dans une cellule de cette manière :
pos = InStr(ActiveCell, "tact") + 5
s = ActiveCell.Value
For a = pos To Len(s) - 9
tsnmb = tsnmb + Mid(s, a, 1)
Next

pour info la cellule contient ceci : [...] tact 12 / 8 12 8

la plupart du temps, à cet emplacement dans cette cellule, j'ai une valeur à un chiffre : 2 4 ou 6, mais il arrive qu'il y ait la valeur 12 comme indiqué ci dessus. Et à la fin, tsnmb est égal à 3 (1+ 2), alors que j'aimerais avoir 12.

si je fais : dim tsnmb as string, ca marche impeccable, mais comme je dois utiliser cette valeur comme un nombre par la suite... ca me plante tout...

merci pour toute aide...

3 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
17 août 2006 à 14:32
Salut,
Lorsque tu auras besoin de l'utiliser en nombre fait une conversion CInt ou Clng ...
Mais garde ce qui marche pour la construction du 12

89254 : @+ Juli?n
: Règlement =>:Moteur de recherche 
3
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
17 août 2006 à 14:34
tu dis :

si je fais : dim tsnmb as string, ca marche impeccable, mais comme je dois utiliser cette valeur comme un nombre par la suite... ca me plante tout...

utilise CLng(tsnmb) (ou CDbl)
cela transforme ta variable de type string en type Long (temporairement)

++
3
gribouillex Messages postés 172 Date d'inscription lundi 10 octobre 2005 Statut Membre Dernière intervention 16 mai 2011
17 août 2006 à 15:10
Merci beaucoup...!! Ca fonctionne impec' !
0
Rejoignez-nous