Convertir d'une chaîne de caractère

Fermé
gon_ak - 8 mars 2006 à 15:03
 gon_ak - 9 mars 2006 à 14:29
Bonjour a tous!

J'ai un petit soucis j'aimerais convertitir une chaine de caractère en nombre. J'ai effectuer un test mais celui-ci ne fonctionne pas!
Pouvez-vous me dire pour quelle raison SVP?
Merci d'avance!

Dim recet, newCarac1, newCarac2
For recet=0 to len("NewTitle") step 2
newCarac1=Mid(recet+1,1)
newCarac2=Mid(recet+2,1)
Affichage=(Asc(newCarac2*256))+(Asc(newCarac1))
next recet
A voir également:

5 réponses

lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
8 mars 2006 à 21:32
Salut,

http://www.lookuptables.com/

ASCII 0 à 127
ASCII étendue 128 à 255

Asc(newCarac2*256) ?!
0
Bonjour,

Sub TestChaine()

    Dim recet, Affichage, newCarac1, newCarac2 As Variant
    Dim Valeur As String
    
    Valeur = "NewTitle"
    For recet = 0 To (Len(Valeur) - 1) Step 2
        newCarac1 = Mid(Valeur, recet + 1, 1)
        newCarac2 = Mid(Valeur, recet + 2, 1)
        Affichage = Affichage + (Asc(newCarac2) + Asc(newCarac1))
    Next recet

    MsgBox Affichage

End Sub


Lupin
0
Je te remercie infiniment pour ta réponse, je ne pensais pas qu'on allait me répondre.
Encore Merci!!!!
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
9 mars 2006 à 13:14
Salut,

Lupin t'as donné le code.

Pouvez-vous me dire pour quelle raison SVP?
As-tu compris pour quoi? C'est ça que tu as demandé.

La table ASCII contient les caractères codé de 0 à 127 et les caractères etendues de 128 à 255.

Dans ton code tu cherches le code ASCII de quelque chose multiplié avec 256, donc tu depasse largement la plage 0..255

Bonne continuation,

lami20j
0
Bonjour lami20,

La raison pour laquelle je multiplie l'une de mes valeur par 256 c'est parce qu'en fait je récupère deux caractère à la fois mais par rapport à mon API la lecture se fait en l'envers.
Exemple:
YARN SPEC N°001
Vois-tu je décompose cette chaîne de caractère par 2 car l'API est constitué de 8 mots (16caractères) pour écrire un titre
YA
RN
S
PE
.....
Et en fait dans l'automate les caractère doivent se lire à l'envers:
AY
NR
.... c'est purquoi je multiplie par 256, bon jj'avoue il y avait une erreur de parenthèse mais mon code fonctionne à présent!
A++
0

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

Posez votre question
Ah oui j'ai oublié ma table ASCII, je l'ai défini entre 32 et 179
0