转换多张纸的数据

时间:2013-02-26 08:24:52

标签: excel vba

有没有办法将单元格范围从多个工作表复制到另一个工作表?例如:

Sheet 1中
苹果
葡萄

樱桃

Sheet 2中
橙色

香蕉
蓝莓

表Sheet 3

协噶尔 马赫什

Gautham

我需要结果

Sheet4
樱桃
蓝莓
Gautham

假设我在表1,2和A中的A,B,C列中有数据。 3,我需要在Sheet4上的A,B,C列中显示组合结果。基本上我需要显示表1,2和表格中的最后一行。 Sheet4中的3列在三列中。

1 个答案:

答案 0 :(得分:1)

试试这段代码:

Sub Consolidate()
    Dim rngTarget As Range

    Set rngTarget = Sheets("YourTargetSheet").Range("A1:C1")

    For i = 1 To 36
        rngTarget.Value = Sheets("Sheet" & i).Range("A146:C146").Value
        Set rngTarget = rngTarget.Offset(1)
    Next

End Sub

或者,如果您在A1中使用此公式并将其复制3列和36行,您还将获得结果:

=INDIRECT(ADDRESS(ROW(),COLUMN(),,,"Sheet"&ROW()))