我写一个宏来做一个复杂的复制/ 粘贴练习。 它在概念上相当直截了当, 但我被困在一个地方。 所有的数据区块都与不同的命名范围相匹配。 我需要通过这个名称列表进行循环, 将每个名称作为参数传递到函数( 实际上是一个子例程, 但想法相同 ) 。 数据来源在同一个工作簿中, 而目的地则在另一个工作簿中 。
以下是我拥有的(仅一整块数据):
Private Sub copyABU()
copyPaste(ThisWorkbook.Names("myRange1").RefersToRange)
copyPaste(ThisWorkbook.Names("myRange2").RefersToRange)
copyPaste(ThisWorkbook.Names("myRange3").RefersToRange)
//etc
End Sub
Private Sub copyPaste(thisRange As Range)
Windows(someworkbook).Range(thisRange).Copy
Range(thisRange).PasteSpecial Paste:=xlPasteValues
End Sub
不幸的是,我在这上面有一个运行时间错误。 我认为有一个类型不匹配, 但我不确定我错过了什么。 有人能看到为什么失败吗? (我使用Excel 2010 ) 。
谢谢!