【发布时间】:2021-06-14 11:14:03
【问题描述】:
你能看到 VBA Excel 中嵌套循环的问题在哪里吗:
我要做的是检查数据(不同的范围,也可能会出现一些重复的数据)
Dan - 带有图案数据的工作表 选项卡 - 包含在名称相同时需要额外 ID 信息的数据表。 要检查它,我在 Dan 中选择一个单元格并用模式选项卡表中的整列对其进行验证
代码:
Sub MatchName()
Dim n1 As Long
Dim n2 As Long
Dim LastRowcheck1 As Long
Dim LastRowcheck2 As Long
LastRowcheck1 = Sheets("Tab").Range("C" & Rows.Count).End(xlUp).Row
LastRowcheck2 = Sheets("Dan").Range("A" & Rows.Count).End(xlUp).Row
Sheets("Tab").Activate
For n1 = 2 To LastRowcheck1
For n2 = 2 To LastRowcheck2
If Sheets("Tab").Cells(n1, 1) = Sheets("Dan").Cells(n2, 1) Then
Sheets("Tab").Cells(n1, 6) = Sheets("Dan").Cells(n2, 1)
Sheets("Tab").Cells(n1, 30) = Sheets("Dan").Cells(n2, 2)
Next n2
Else
Next n1
End Sub
【问题讨论】:
-
不,你不能用
If选择你要去哪个循环Next。你必须Next他们俩。 -
还缺少
End If -
这里不需要使用
Sheets("Tab").Activate,你可以删除这个操作——什么都不会改变