Convertir un nombre décimal en HEX avec 2 digits

Le
Jean-Marc
Bonjour,

J'essais de convertir un nombre de [0..256] en HEXA en affichant le tout sur
2 digits.

Example:
HEX(3) ->03
HEX(10) ->0A
HEX(32) ->20

J'essais avec la fonction suivante:
Format(Hex(CkSum), "00")

voici mon code mais il plante quand le nombre à convertir vaut 122


Dim st As String

st = Format(Hex(121), "00") 'return 79
st = Format(Hex(123), "00") 'return 7B
st = Format(Hex(122), "00") 'return 00


Merci beaucoup
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
papou
Le #4748531
Bonjour
As-tu regardé dans les fonctions natives d'Excel ?
Je pense à DECHEX (dans la catégorie des fonctions scientifiques) qui fait
exactement ce que tu cherches à faire.

Cordialement
Pascal

"Jean-Marc" news:
Bonjour,

J'essais de convertir un nombre de [0..256] en HEXA en affichant le tout
sur
2 digits.

Example:
HEX(3) ->03
HEX(10) ->0A
HEX(32) ->20

J'essais avec la fonction suivante:
Format(Hex(CkSum), "00")

voici mon code mais il plante quand le nombre à convertir vaut 122...


Dim st As String

st = Format(Hex(121), "00") 'return 79
st = Format(Hex(123), "00") 'return 7B
st = Format(Hex(122), "00") 'return 00


Merci beaucoup...


papou
Le #4748521
Petite précision :
La fonction est disponible si la macro complémentaire "Utilitaire d'analyse"
est cochée.

Cordialement
Pascal

"papou" %
Bonjour
As-tu regardé dans les fonctions natives d'Excel ?
Je pense à DECHEX (dans la catégorie des fonctions scientifiques) qui fait
exactement ce que tu cherches à faire.

Cordialement
Pascal

"Jean-Marc" de news:
Bonjour,

J'essais de convertir un nombre de [0..256] en HEXA en affichant le tout
sur
2 digits.

Example:
HEX(3) ->03
HEX(10) ->0A
HEX(32) ->20

J'essais avec la fonction suivante:
Format(Hex(CkSum), "00")

voici mon code mais il plante quand le nombre à convertir vaut 122...


Dim st As String

st = Format(Hex(121), "00") 'return 79
st = Format(Hex(123), "00") 'return 7B
st = Format(Hex(122), "00") 'return 00


Merci beaucoup...






isabelle
Le #4748511
bonjour Jean Marc,

Hex, fonction
Renvoie une valeur de type String représentant un nombre sous forme hexadécimale.

on ne peut pas mettre un format nombre à un format texte.

isabelle


Bonjour,

J'essais de convertir un nombre de [0..256] en HEXA en affichant le tout sur
2 digits.

Example:
HEX(3) ->03
HEX(10) ->0A
HEX(32) ->20

J'essais avec la fonction suivante:
Format(Hex(CkSum), "00")

voici mon code mais il plante quand le nombre à convertir vaut 122...


Dim st As String

st = Format(Hex(121), "00") 'return 79
st = Format(Hex(123), "00") 'return 7B
st = Format(Hex(122), "00") 'return 00


Merci beaucoup...


Jean-Marc
Le #4748501
Bonjour,

Pourtant, j'arrive à formater des chaînes qui me retourne D5, A8 ou 03...

Merci


bonjour Jean Marc,

Hex, fonction
Renvoie une valeur de type String représentant un nombre sous forme hexadécimale.

on ne peut pas mettre un format nombre à un format texte.

isabelle


Bonjour,

J'essais de convertir un nombre de [0..256] en HEXA en affichant le tout sur
2 digits.

Example:
HEX(3) ->03
HEX(10) ->0A
HEX(32) ->20

J'essais avec la fonction suivante:
Format(Hex(CkSum), "00")

voici mon code mais il plante quand le nombre à convertir vaut 122...


Dim st As String

st = Format(Hex(121), "00") 'return 79
st = Format(Hex(123), "00") 'return 7B
st = Format(Hex(122), "00") 'return 00


Merci beaucoup...





isabelle
Le #4748491
..mais tu peut toujours traiter une chaine de caractère,

x = 3
If Application.CountA(Hex(x)) = 1 Then
st = "0" & Hex(x)
Else
st = Hex(x)
End If


isabelle


bonjour Jean Marc,

Hex, fonction
Renvoie une valeur de type String représentant un nombre sous forme
hexadécimale.

on ne peut pas mettre un format nombre à un format texte.

isabelle



Bonjour,

J'essais de convertir un nombre de [0..256] en HEXA en affichant le
tout sur 2 digits.

Example: HEX(3) ->03
HEX(10) ->0A
HEX(32) ->20

J'essais avec la fonction suivante:
Format(Hex(CkSum), "00")

voici mon code mais il plante quand le nombre à convertir vaut 122...


Dim st As String

st = Format(Hex(121), "00") 'return 79
st = Format(Hex(123), "00") 'return 7B
st = Format(Hex(122), "00") 'return 00


Merci beaucoup...




Modeste
Le #4747991
Bonsour® isabelle avec ferveur ;o))) vous nous disiez :

..mais tu peut toujours traiter une chaine de caractère,
Hex, fonction
Renvoie une valeur de type String représentant un nombre sous forme
hexadécimale.
J'essais de convertir un nombre de [0..256] en HEXA en affichant le
tout sur 2 digits.




parmi les macrocomplémentaires VBA il existe la fonction DECHEX
conversion décimale vers Hexa
ÞCHEX(A1;2)
../..
Convertit un nombre décimal en nombre hexadécimal.
Si cette fonction n'est pas disponible et renvoie l'erreur #NOM ?, installez et
chargez la macro complémentaire Utilitaire d'analyse.
Procédure
Dans le menu Outils, cliquez sur Macros complémentaires.
Dans la liste Macros complémentaires disponibles, activez la case à cocher
Utilitaire d'analyse, puis cliquez sur OK.
Si nécessaire, suivez les instructions fournies par le programme d'installation.
Syntaxe
DECHEX(nombre;nb_car)
nombre : représente le nombre entier décimal à convertir. Si nombre est
négatif, nb_car n'est pas pris en compte et DECHEX renvoie un nombre hexadécimal
de 10 caractères (40 bits), dans lequel le bit de poids fort est le bit de
signe. Les 39 autres bits sont des bits de grandeur. Les nombres négatifs sont
représentés à l'aide de la notation de complément à 2.
nb_car : représente le nombre de caractères à utiliser. Si nb_car est omis,
DECHEX utilise le nombre de caractères minimum nécessaire. L'argument nb_car
sert notamment à compléter la valeur renvoyée avec des zéros (0) de tête.

@+
;o)))



isabelle
Le #4747791
ha.. mais bien sur, super geedee,

x = Evaluate("ÞCHEX(122,2)")

bisou*
isabelle

Bonsour® isabelle avec ferveur ;o))) vous nous disiez :


..mais tu peut toujours traiter une chaine de caractère,

Hex, fonction
Renvoie une valeur de type String représentant un nombre sous forme
hexadécimale.

J'essais de convertir un nombre de [0..256] en HEXA en affichant le
tout sur 2 digits.





parmi les macrocomplémentaires VBA il existe la fonction DECHEX
conversion décimale vers Hexa
ÞCHEX(A1;2)
../..
Convertit un nombre décimal en nombre hexadécimal.
Si cette fonction n'est pas disponible et renvoie l'erreur #NOM ?, installez et
chargez la macro complémentaire Utilitaire d'analyse.
Procédure
Dans le menu Outils, cliquez sur Macros complémentaires.
Dans la liste Macros complémentaires disponibles, activez la case à cocher
Utilitaire d'analyse, puis cliquez sur OK.
Si nécessaire, suivez les instructions fournies par le programme d'installation.
Syntaxe
DECHEX(nombre;nb_car)
nombre : représente le nombre entier décimal à convertir. Si nombre est
négatif, nb_car n'est pas pris en compte et DECHEX renvoie un nombre hexadécimal
de 10 caractères (40 bits), dans lequel le bit de poids fort est le bit de
signe. Les 39 autres bits sont des bits de grandeur. Les nombres négatifs sont
représentés à l'aide de la notation de complément à 2.
nb_car : représente le nombre de caractères à utiliser. Si nb_car est omis,
DECHEX utilise le nombre de caractères minimum nécessaire. L'argument nb_car
sert notamment à compléter la valeur renvoyée avec des zéros (0) de tête.

@+
;o)))







Publicité
Poster une réponse
Anonyme