Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何解决VBA中的这种类型不匹配问题?_Vba_Compiler Errors - Fatal编程技术网

如何解决VBA中的这种类型不匹配问题?

如何解决VBA中的这种类型不匹配问题?,vba,compiler-errors,Vba,Compiler Errors,我在VBA方面有非常基本的经验,但一直在努力理解为什么在下面的代码中出现类型不匹配错误。它是一个模块,在Word的功能区中显示模板。谁能给我指一下正确的方向吗 Private Sub StoreObjRef(obj As Object) ' Store an object reference Dim lObj As Long lObj = ObjPtr(obj) gDocPropSetString("RibbonPtr") = CStr(lObj) End Sub

我在VBA方面有非常基本的经验,但一直在努力理解为什么在下面的代码中出现类型不匹配错误。它是一个模块,在Word的功能区中显示模板。谁能给我指一下正确的方向吗

Private Sub StoreObjRef(obj As Object)
    ' Store an object reference
    Dim lObj As Long
    lObj = ObjPtr(obj)
    gDocPropSetString("RibbonPtr") = CStr(lObj)
End Sub

哪一行抛出错误?您的版本是什么位?32位还是64位?为什么要对
ObjPtr
的结果进行排序?这有什么意义(双关语)?
Dim lObj as LongPtr
因此它可以在32位和64位上工作。对不起,应该说它在第4行出错-lObj=ObjPtr(obj),而我在64位。您需要
LongPtr
,正如前面提到的。哪一行抛出了错误?您的版本是什么位?32位还是64位?为什么要对
ObjPtr
的结果进行排序?这有什么意义(双关语)?
Dim lObj as LongPtr
因此它可以在32位和64位上工作。对不起,应该说它在第4行有错误-lObj=ObjPtr(obj),我在64位上。您需要
LongPtr
,正如前面提到的那样。