vba - VBA:如果单元格与另一列匹配,则循环跳过
问题描述
如何循环遍历一列并跳过单元格值与另一张表中的列表匹配的行?
For Counter = 2 To 5
rst.AddNew
rst.Fields("Title") = Sheets("Sheet1").Cells(Counter, 1).Value
rst.Fields("Names") = Sheets("Sheet1").Cells(Counter, 2).Value
Next Counter
正如你所看到的,我有一个简单的 for 循环,它将在第 2 行到第 5 行循环,但我想检查单元格中的值是否与另一个选项卡中的值匹配,如果是,我想跳过该行。
解决方案
假设要检查的列是 E 列
Dim ColumnToCheck as Range
Set ColumnToCheck=range("Sheets2!E:E")
For Counter = 2 To 5
ValueToCheck= Sheets("Sheet1").Cells(Counter, 1).Value
If Not IsError(Application.Match(ValueToCheck, ColumnToCheck,0)) Then
rst.AddNew
rst.Fields("Title") = Sheets("Sheet1").Cells(Counter, 1).Value
rst.Fields("Names") = Sheets("Sheet1").Cells(Counter, 2).Value
End If
Next Counter
推荐阅读
- python - 结合 SQLAlchemy yield_per 和 group_by
- r - 在 R 中使用子集求和
- spring-mvc - Spring MVC - Tomcat GlobalNamingRessource - 数据源 NameNotFoundException
- php - Woocommerce 更改订单收到页面标题
- coq - 在 Coq 中使用 False_rec 构建一个别名列表类型
- reactjs - 在屏幕转换上反应本机警告
- node.js - Yeoman 无法运行
- haskell - Haskell冲突的家庭实例声明
- wxwidgets - 如何在Windows下的Notebook控件中获取用户新的页面选择?
- c# - 合并
和 进入 C# 字典