【发布时间】:2018-02-18 06:15:17
【问题描述】:
我正在尝试在 D 列和 H 列中查找一个字符串,如果它们符合某些条件,则在 W 列中插入字符串“匹配”。
例如,如果字符串“Auditorium”出现在 D 列中,而字符串“INTERNAL”出现在同一行的 H 列中,则在 W 列中插入字符串“Match”。
我的代码在 W 列中插入字符串“Match”,以针对包含字符串“INTERNAL”的所有行,而不考虑 D 列中的字符串!
任何建议将不胜感激!
行 | D 栏 | H 栏 | W栏
1 |礼堂 |马丁(内部)|匹配
2 |礼堂 |约翰 |
3 |剧院 |爱德华(内部)|匹配
4 |剧院 |乔治 |匹配
Dim celA
Dim celB
For Each celA In Range("D1:D50")
For Each celB In Range("H1:H50")
If InStr(1, celA.Value, "Auditorium") <> 0 And InStr(1, celB.Value, "INTERNAL") <> 0 Then celB.Offset(0, 10).Value = "Match"
Next celB
Next celA
【问题讨论】:
-
既然可以使用本机 Excel 做同样的事情,为什么还要使用 VBA?
-
@AJD 所说的是正确的。在单元格 W1 中,您可以输入
=IF(AND(D1="auditorium",ISNUMBER(SEARCH("internal",H1,1))),"Match","")并根据需要复制下来。
标签: vba excel multiple-columns string-comparison