Assez incompréhensible qu'avec 10 caractères le 1er bit du 1er chiffre hexadécimal soit considéré comme un bit de signe. Ça se comprendrait avec exactement 4 ou 8 chiffres hexadécimaux, comme le fait VBA ou les non supportés 16 ou 32. Ils ont voulu rester indépendant des longueurs de registres CPU je suppose, mais alors ça n'a aucun sens.
VB:
Function ValHexVBA(ByVal V As String)
ValHexVBA = Val("&H" & V)
End Function
Hello,
voici ce qui est indiqué dans la doc de HEX2DEC :
Nombre Obligatoire. Représente le nombre hexadécimal à convertir. L’argument nombre ne peut pas comporter plus de 10 caractères (40 bits). Le bit poids fort de l’argument nombre 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.