ByRef Argument Type Mismatch"错误VB6

时间:2014-08-14 19:42:45

标签: vb6

我是VB6的新手并且传播。我的VB项目正在使用spread。在表单中,只要进行了扩展初始化,VB 6就会抛出编译错误,因为“By Ref Argument Type Mismatch”错误“。是的,因为传播问题?我从已经存在的vb项目中删除了一些功能所以是因为我可能已经注释掉了一些功能。请点赞。提供你宝贵的建议。谢谢。我在windows 7中运行应用程序

1 个答案:

答案 0 :(得分:5)

" ByRef参数类型不匹配"将参数传递给使用ByRef(默认值)且数据类型与预期不匹配的函数时发生错误。

Private Sub MyMethod(ByRef Value As String)
  ...
End Sub

Private Sub OtherMethod()
  Dim Value As Integer
  MyMethod Value
End Sub

请注意,Value声明为Integer,但参数声明为String,因此不匹配。

要么更正要匹配的数据类型(哪种方式取决于它们是什么以及它们的用途),将参数更改为ByVal,或两者都做(除非您明确要使用{{1},否则最佳选项})。

如果主叫代码不是你的,那么ByRef可能会被忽略,导致VB6默认为By...,即使它不是故意的。