我有一个Word文档,应该打开一个Excel文档,找到一个范围内的第一个空单元格,然后开始用信息填充某些单元格。在此之前,我想使用“偏移”,但是由于某些原因,它会产生“偏移”错误。这是代码的相关部分:
Sub ExcelDoc()
Dim XLapp As Object
Dim objExcelDoc As Object
Dim objOverzicht As Object
Dim c As Range
'Set objOverzicht
Set objOverzicht = ActiveDocument
'Set XLapp and objExcelDoc
Set XLapp = CreateObject("Excel.Application")
XLapp.Visible = False
Set objExcelDoc = XLapp.Documents.Open("C:\Document.xlsm")
'Set c
Set c = objExcelDoc.Sheets("Overzicht").Range("B3")
Do
Set c = c.Offset(1, 0)
Loop Until c = ""
当我运行代码时,它标记为“ .Offset”并显示消息“编译错误:未找到方法或数据成员”。我在这里做错了什么?
提前非常感谢您对此进行调查!
Word本身有一个“ Range”对象,因此当您声明Dim c As Range
c创建为Word.Range对象时,它没有Offset属性。因此,您有2种解决问题的方法:
只需将c声明为Variant即可: Dim c as Variant
进行MS Excel参考并使用它声明变量:
2.1在VBA编辑器中,转到“工具”->“参考”,然后打开“ Microsoft Excel XX.X对象库”
2.2使用参考声明变量: Dim c as Excel.Range
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句