首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

VB6报13 门类不匹配

2012-08-25 
VB6报13 类型不匹配各位前辈,请教一下以下代码编译时报错13, 类型不匹配,请问怎样修改Private Sub tmrTime

VB6报13 类型不匹配
各位前辈,请教一下
以下代码编译时报错13, 类型不匹配,请问怎样修改

Private Sub tmrTime_Timer()
Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim szDeviceList As String '用于存放监视软元件
Dim Devbox(12) As Long '用于暂时存放监视软元件
Dim lData(12) As Long '用于存放监视软元件的数值
Dim lRet As Long
Dim lSize As Long '监视软元件的个数
lSize = 13

'设置监视的软元件
Devbox(0) = "X0" 此处出错,报错代码为13 类型不匹配
Devbox(1) = "X1"
Devbox(2) = "X2"
Devbox(3) = "X3"
Devbox(4) = "X4"
Devbox(5) = "X5"
Devbox(6) = "X6"
Devbox(7) = "X7"
Devbox(8) = "D0"
Devbox(9) = "D1"
Devbox(10) = "D2"
Devbox(11) = "D3"
Devbox(12) = "D4"

For i = 0 To lSize - 1
szDeviceList = szDeviceList + Devbox(i) 
  If i <> lSize Then
  szDeviceList = szDeviceList + vbLf
  End If
  Next
 lRet = ActQJ71E71TCP.rendevicerandom(szDeviceList, lSize, lData(0))
 If lRet <> 0 Then
  txtStatus.Text = "错误发生(出错代码:" + Hex$(lRet) + ")"
 End If

[解决办法]
典型的错误,字符串是不能赋值给Long类型变量的
[解决办法]
其实,很多情况下VB内部类型转换替程序书写者做了类型转换,但像你这个“X0”,VB内部转换都不能成功转换。因为数字是没有X这个字符的,所以必定失败。

VB code
Option ExplicitPrivate Sub Command1_Click()    Dim lngP As Long    lngP = "10"    lngP = "X0"End Sub 

热点排行