将其他工作簿中的单元格自动复制到一个工作簿中

时间:2016-10-02 21:50:20

标签: excel vba excel-vba excel-formula

我在一个文件夹中有许多相同结构的excel文件(样本1,样本2 ......样本20)。我在同一文件夹中创建了另一个excel文件,需要从其他excel文件中提取信息(结果)。每个Sample文件中都有一个特定的列,我需要将其复制并粘贴到Results文件中的一行中。我正在尝试创建一个工具或宏,只需按一下按钮,就可以从每个文件中提取相同的列并将其粘贴到Results文件中的新行中。我不能改变Sample文件中的任何内容,这应该在不打开每个文件的情况下自动完成。此外,新的示例文件将添加到文件夹(示例21 ... 22等),因此该功能应该能够从新文件中提取。

编辑。

基于Pomul关于转置行的建议。我想出了以下代码和结果。现在我正在测试代码以在同一工作表中进行转置:

Transpose Image Screenshot

Transpose Image Screenshot

请让我知道为什么我的代码会创建另一列而不是将其转换为行。

1 个答案:

答案 0 :(得分:-1)

这似乎有效:

Sub Button1_click()
Dim i&, z&, x&

i = Worksheets("Sheet2").Cells(Rows.Count, "B").End(xlUp).Row
z = 1: x = 1

While z <= i
    Worksheets("Sheet1").Range("A" & x).Resize(, i) = _
        WorksheetFunction.Transpose(Worksheets("Sheet2").Range("B" & z).Resize(i))
    z = i + 1
Wend
End Sub