我们开发了一个插件,用于将新系统中的帐号/名称和成本中心编号/名称等内容翻译成旧系统,反之亦然。直到今天我才开始遇到类型不匹配错误(运行时错误13)。
我们的插件有多张纸。用于分支的1张表,用于帐户的1张表等。用于进行翻译的表单访问适当的表以检索数据以进行翻译。以下是几个变量及其声明方式:
Public UB as long
Public ThisAddIn as string
ThisAddIn = "TranslateAddIn.xla"
'Below is the part of the code that is causing the error.
UB = Workbooks(ThisAddIn).Worksheets("Branches").Cells.Find("*", [A1], , , xlByRows, xlPrevious).Row
我已经检查了"分支"表格中没有任何与此表格中的数据有任何不寻常之处。
我不确定发生了什么。这段代码已经工作多年而没有任何问题。
任何建议都将不胜感激。谢谢你的帮助。
答案 0 :(得分:0)
尝试在find方法中完全限定范围对象。类似的东西:
Public UB as long
Public ThisAddIn as string
ThisAddIn = "TranslateAddIn.xla"
'Below is the part of the code that is causing the error.
With Workbooks(ThisAddIn).Worksheets("Branches")
UB = .Cells.Find("*", .Range("A1"), , , xlByRows, xlPrevious).Row
End With
答案 1 :(得分:-2)
遗憾的是,您无法通过名称引用其他工作簿中的工作表,而应使用索引。