0

快速提问:

在 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
4

1 回答 1

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
于 2013-07-23T14:23:45.030 回答