VBA Excel:复制分隔的单元格

时间:2013-07-23 13:58:14

标签: excel vba

快速提问:

在Excel中,我有一张具有以下结构的工作表:

Sheet1     
A      B     C     D     E    F    G    H    I    J    K   ...
2001   x     x     x     x   2002  x    x    x    x   2003 ...

我想在VBA中创建一个宏,用以在另一个工作表中复制和粘贴多年的值:

Sheet2
A      B     C     D    ...
2001   2002  2003  2004 ...

我怎样才能以简单的方式做到这一点?

到目前为止我的解决方案草图

Set sourceRng = sourceSheet.range(Mark every fifth cell)
Set targetRng = destinationSheet.range(something)

sourceRng.Copy
targetRng.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

1 个答案:

答案 0 :(得分:1)

您可以循环和复制单个单元格......

Set StartCellSheet1 = Sheet1.Range("A2")
Set StartCellSheet2 = Sheet2.Range("A2")

Sheet2Index = 0
for Sheet1Index = 0 to 2000 step 5 'use the limit of your sheet
    StartCellSheet2.Offset(0, Sheet2Index).Value = StartCellSheet1.Offset(0,Sheet1Index).Value
    Sheet2Index = Sheet2Index + 1 
next