对于不同工作簿中的每个操作

时间:2015-11-16 11:08:35

标签: excel vba excel-vba

我有一个For循环,它控制特定列并将整行复制到另一张表。

但是我找不到如何从不同的工作表中获取行。我需要从“InputALL”工作表而不是“OutputALL”复制完全相同的行。

Dim bottomL As Integer
bottomL = Sheets("OutputALL").Range("A" & Rows.Count).End(xlUp).Row
For Each c In Sheets("OutputALL").Range("D1:D" & bottomL)
    If c.Value = "-----" Then
        c.EntireRow.Copy Worksheets("Output2").Range("A" & Rows.Count).End(xlUp).Offset(1)
    End If
Next c

1 个答案:

答案 0 :(得分:0)

我相信这就是你寻求的答案:

Dim bottomL As Integer
Dim c As Variant
bottomL = Sheets("OutputALL").Range("A" & Rows.Count).End(xlUp).Row
For Each c In Sheets("OutputALL").Range("D1:D" & bottomL)
    If c.Value = "-----" Then
        Sheets("InputALL").Range(c.Address).EntireRow.Copy _
            Worksheets("Output2").Range("A" & Rows.Count).End(xlUp).Offset(1)
    End If
Next c

通过使用单元格的地址,您可以使用它在不同工作表中的相同“坐标”上指定单元格。

哦,我还添加了

Dim c As Variant

明确定义变量(在为其分配值之前)是好习惯。