2011-07-01 328 views
6

如何将十六进制值转换为VB6中的十进制值?在VB6中将十六进制值转换为十进制值

我想只是为了看看,如果这个工程:

Dim hexVal as string 
hexVal = "#7B19AB" 
clng("&H" & hexVal) 

但是,我得到“类型不匹配”的错误。

+2

啊,你的意思是“将一个十六进制字符串转换为二进制长。”根本没有涉及“小数”。 – Bob77

回答

9

摆脱了#号的

Dim hexVal as string 
hexVal = "7B19AB" 
clng("&H" & hexVal) 
4

摆脱hexVal字符串中的数字符号(#)。

0

这应该这样做

Dim hexVal as String 
hexVal = "#7B19AB" 
Dim intVal as Integer 
intVal = Val("&H" & Replace(hexVal, "#", "")) 
2

试试看:

value=CDbl("&H" & HexValue) 

value=CInt("&H" & HexValue) 'but range +- 32,768 
+1

感谢您发布该答案,但它是已发布和接受的其他人的副本。如果您想改进现有的anser,请对其进行编辑并由社区中的其他人审阅。 – Deanna

1

尝试将其>>>>>> 打印十六进制(ASC(Text1.Text))

0
Dim uzunluk as Integer 

On Error Resume Next 
uzunluk = Len(Text1.Text) 
For i = 0 To uzunluk 
    Text1.SelStart = i 
    Text1.SelLength = 1 
    Print Hex(Asc(Text1.SelText)) 
Next i 
0

< < < < 昏暗hexVal作为字符串昏暗str作为字符串昏暗uzunluk作为整数上的错误继续下一步hexVal =“#7B19AB”str = Replace(hexVal,“#”,“”)Text1.Text = str uzunluk = Len(Text1.Text)For i = 0 To uzunluk Text1.SelStart = i Text1.SelLength = 1 Print Hex Asc(Text1.SelText))Next i

相关问题