2009-07-28 142 views
0

我正在尝试编写将选择命名范围的VBA代码,将其复制并粘贴一定数量的行。我需要知道的是如何选择与上述单元格对应的单元格区域。VBA命名范围偏移量

E.g.我有一个范围“myRange”,它指的是:“= $ A $ 1:D $ 1 $,$ F $ 1,$ K $ 1”。我想通过引用“myRange”来代替单元格引用的字符串,将其复制并粘贴到“= $ A $ 2:D $ 2 $,$ F $ 2,$ K $ 2”中。

任何帮助?

回答

1

是这样的吗?

Sub Test() 

    Dim oRange As Range 
    Set oRange = ActiveSheet.Range("A1:D1") ' Change this to point at the range to be copied 

    Dim i As Integer 
    For i = 1 To 10 
     oRange.Copy 
     oRange.Offset(i, 0).PasteSpecial xlPasteAll 
    Next i 

End Sub 

编辑:OK,这样的事情,然后(应付不相交的范围):

Sub Test() 

    Dim oRange As Range 
    Set oRange = ActiveSheet.Range("A1,C1:D1") ' Change this to point at the range to be copied 

    Dim i As Integer 
    For i = 1 To 10 
     Dim oArea As Range 
     For Each oArea In oRange.Areas 
      oArea.Copy 
      oArea.Offset(i, 0).PasteSpecial xlPasteAll 
     Next oArea 
    Next i 

End Sub 
+0

不行的,我需要的东西会多选择如函数“= $ A $ 1:D $ 1 $,$ F $ 1,$ K $ 1” – Karl 2009-07-29 10:25:06