在vba中循环,它将遍历所有工作表并获取数据

时间:2013-06-15 00:40:45

标签: excel excel-vba vba

我想看看是否有人可以在VBA Excel中向我展示一个循环,它将执行以下操作:

让我们说我有一个未知数量的未知名称的纸张,而不是一个最终的纸张作为“结果表”我希望这个循环去除了最后一个以外的所有其他纸张并从中抓住它们其中包含一个字段名称:“公司名称”,并从最后一个“结果表”中的第一个名称开始逐个对所有名称进行排序

并且最后一个工作表的名称将始终与结果表相同,因此如果需要,该名称可以用作例外。

Thaks。

1 个答案:

答案 0 :(得分:0)

现在我没有Excel进行测试,而且你要我在没有尝试的情况下为你制作它。我会给你一个小片,让你以正确的方式。

这会将每张纸的A1复制到纸张结果表中。

Dim Sh1 As WorkSheet, Sh2 As WorkSheet, R As Integer
Set Sh1 = Sheets("Result sheet")
R = 1
For Each Sh2 In WorkSheets
  If Sh2.Name <> "Result sheet" Then
    Sh1.Cells(R, 1) = Sh2.Cells(1, 1)
    R = R + 1
  End If
Next Sh2

最后你得到了Sh1中的数据,你可以用Sh2.Sort()来按照你想要的方式对它进行排序。