类型不匹配(错误 13)
请参阅 特性
当前 Visual Basic为了完成数据类型的赋值,能够对许多数值进行转换,而较早的版本则做不到。然而,此错误仍可能发生并且有 下列几种原因和解决方法:
变量或属性类型错误。例如,一个整型值的变量不能赋给字符串值,除非整个字符串可识别成为整型。
尽量在兼容的数据类型间赋值。例如,Integer 可以被赋给 Long,Single 可以被赋给 Double,而任何类型(除了用户类型)可以赋给 Variant。
将对象传给了需要单一属性或值的过程。
传递正确的单一属性或调用给工程的方法。
使用了表达式所要的模块或工程名称,例如:
Debug.Print MyModule
指定可以显示的表达式。
将传统 Basic 错误处理例程与拥有 Error 子类型 (10, vbError) 的Variant 值混合,例如:
Error CVErr(n)
识别一个错误,要将其映射到 Visual Basic 或用户错误,然后产生错误。
CVErr 值不能转换成 Date。例如:
MyVar = CDate(CVErr(9))
使用 Select Case 语句或一些类似的结构映射返回的 CVErr。
在运行时,此错误通常说明在无效子类型的表达式中使用了 Variant,或 包含数组的 Variant 中出现了 Print # 语句。
可用循环显示每个元素以打印数组,。
详细信息,可选取有问题的项目,并按下 F1 (在Windows中)或HELP(在Macintosh中)键。