Conversion hex/dec en vb
Fermé
kamel_bxz
Messages postés
7
Date d'inscription
dimanche 27 janvier 2008
Statut
Membre
Dernière intervention
12 avril 2008
-
16 févr. 2008 à 15:34
kaadooze Messages postés 2 Date d'inscription mardi 6 mai 2014 Statut Membre Dernière intervention 6 mai 2014 - 6 mai 2014 à 14:25
kaadooze Messages postés 2 Date d'inscription mardi 6 mai 2014 Statut Membre Dernière intervention 6 mai 2014 - 6 mai 2014 à 14:25
A voir également:
- Vba hex dec
- Hxd hex editor - Télécharger - Gestion de fichiers
- Hex editor - Télécharger - Édition & Programmation
- L'indice n'appartient pas à la sélection vba - Forum VB / VBA
- Incompatibilité de type vba ✓ - Forum Programmation
- Hex editor neo - Télécharger - Édition & Programmation
6 réponses
Polux31, tu es une merde.
Ce genre de réponses n'apportent rien et ne sont que le reflet de ta pitoyable intelligence.
Va mourir.
Voici les fonctions que j'utilise :
Function hexadecimal_en_decimal(chaine_hexa)
resultat = 0
For i = Len(chaine_hexa) To 1 Step -1 ' Depuis i = longueur chaine à i = 1
longueur = Mid(chaine_hexa, i, 1) ' renvoit le (1) caractère à partir de la position i de la chaine (on commence donc par la fin)
position = Instr("0123456789ABCDEF", UCase(longueur))-1 ' On prend milieu, on met en majuscule au cas où on aurait écrit abcdef au lieu de ABCDEF,
' On met dans position la position du 1er caractère de milieu dans 0123456789ABCDEF et on retire 1 => on a converti de l'hexa en dec
If position >= 0 Then
valeur = position * (16 ^ (Len(chaine_hexa)-i)) ' Formule de maths de conversion
resultat = resultat + valeur
Else
resultat = 0
i = 0 ' Fin de la boucle en cas d'erreur
End If
Next
hexadecimal_en_decimal = resultat
End Function
Function decimal_en_hexadecimal(chaine_dec)
Do While chaine_dec > 0
chaine_dec_tmp = Int(chaine_dec/16)
If chaine_dec - (chaine_dec_tmp * 16) = 10 Then
caractere_hexa = "A"
Else If chaine_dec - (chaine_dec_tmp * 16) = 11 Then
caractere_hexa = "B"
Else If chaine_dec - (chaine_dec_tmp * 16) = 12 Then
caractere_hexa = "C"
Else If chaine_dec - (chaine_dec_tmp * 16) = 13 Then
caractere_hexa = "D"
Else If chaine_dec - (chaine_dec_tmp * 16) = 14 Then
caractere_hexa = "E"
Else If chaine_dec - (chaine_dec_tmp * 16) = 15 Then
caractere_hexa = "F"
Else
caractere_hexa = chaine_dec - (chaine_dec_tmp * 16)
End If
End If
End If
End If
End If
End If
decimal_en_hexadecimal = caractere_hexa & decimal_en_hexadecimal
chaine_dec = chaine_dec_tmp
caractere_hexa = ""
Loop
End Function
wscript.echo "FFFF ça fait : " & hexadecimal_en_decimal("FFFF")
wscript.echo "65535 ça fait : " & decimal_en_hexadecimal("65535")
Ce genre de réponses n'apportent rien et ne sont que le reflet de ta pitoyable intelligence.
Va mourir.
Voici les fonctions que j'utilise :
Function hexadecimal_en_decimal(chaine_hexa)
resultat = 0
For i = Len(chaine_hexa) To 1 Step -1 ' Depuis i = longueur chaine à i = 1
longueur = Mid(chaine_hexa, i, 1) ' renvoit le (1) caractère à partir de la position i de la chaine (on commence donc par la fin)
position = Instr("0123456789ABCDEF", UCase(longueur))-1 ' On prend milieu, on met en majuscule au cas où on aurait écrit abcdef au lieu de ABCDEF,
' On met dans position la position du 1er caractère de milieu dans 0123456789ABCDEF et on retire 1 => on a converti de l'hexa en dec
If position >= 0 Then
valeur = position * (16 ^ (Len(chaine_hexa)-i)) ' Formule de maths de conversion
resultat = resultat + valeur
Else
resultat = 0
i = 0 ' Fin de la boucle en cas d'erreur
End If
Next
hexadecimal_en_decimal = resultat
End Function
Function decimal_en_hexadecimal(chaine_dec)
Do While chaine_dec > 0
chaine_dec_tmp = Int(chaine_dec/16)
If chaine_dec - (chaine_dec_tmp * 16) = 10 Then
caractere_hexa = "A"
Else If chaine_dec - (chaine_dec_tmp * 16) = 11 Then
caractere_hexa = "B"
Else If chaine_dec - (chaine_dec_tmp * 16) = 12 Then
caractere_hexa = "C"
Else If chaine_dec - (chaine_dec_tmp * 16) = 13 Then
caractere_hexa = "D"
Else If chaine_dec - (chaine_dec_tmp * 16) = 14 Then
caractere_hexa = "E"
Else If chaine_dec - (chaine_dec_tmp * 16) = 15 Then
caractere_hexa = "F"
Else
caractere_hexa = chaine_dec - (chaine_dec_tmp * 16)
End If
End If
End If
End If
End If
End If
decimal_en_hexadecimal = caractere_hexa & decimal_en_hexadecimal
chaine_dec = chaine_dec_tmp
caractere_hexa = ""
Loop
End Function
wscript.echo "FFFF ça fait : " & hexadecimal_en_decimal("FFFF")
wscript.echo "65535 ça fait : " & decimal_en_hexadecimal("65535")
7 juil. 2011 à 19:34
Salutations,
Martin T