我想创建一些VBA代码来复制多个工作表中的值并将其粘贴到一个主文件中。
我有以下步骤:
转到工作表并选择范围
Sheets("V01 DEN HAAG").Select
Range("H7").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Copy
转到主文件/选择最低行,将其偏移一个并粘贴值
Sheets("DATASET").Select
Range("B3").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Select
ActiveCell.Paste
使用最后一个“ActiveCell.Paste”语句似乎有一个小错误。它给了我错误:
Object不支持此属性或方法。
任何想法出了什么问题?
答案 0 :(得分:1)
Dim i As Integer = GetDbValue(Of Integer)()
是类ActiveCell
的对象,此类没有Excel.Range
这样的方法。
您需要使用Paste
而不是参数PasteSpecial
设置为Paste
:
xlPasteAll
但是,在复制/粘贴范围时选择范围不是一个好习惯。相反,您应该使用ActiveCell.PasteSpecial xlPasteAll
类型的变量。下面是如何使用变量执行相同任务的示例:
Range