我有一张Excel表格,其中A列和B列填充了数据。
B C (columns)
1 1a (row 1 is here)
2 3
3 4
4 4a
4a 5
5 5a
5a 6
6 6a
6a 6b
6b 10
10 11
11 12
12 13
13 14
14 15
15 16
16 16a
16a 16b
16b 16c
16c OUT
7 7a
7a 8
8 9
9 6
我想说“如果单元格B7中的数据等于输入单元格O7的完全相同的数据,则执行语句。如果没有,则转到下一个单元格并检索该值,然后[执行其他语句]”< / p>
我所尝试的问题是,即使一个单元格中有一个“4”并且我想找到以“4a”开头的单元格,它仍然以仅包含“4”的单元格开头“因为”4a“中有4个
示例:
For x = 7
If Sheets("Sheet3").Cells(x, 2).Value = Sheets("Sheet3").Cells(7, "O").Value
[execute statement]
如果“O7”设置为“4a”,它会在B中查找第一个值为“4”的值,而不是“4a”
是否有一个特殊的函数或命令使我的代码找到确切的值而不只是第一个包含部分值的单元格?
谢谢。
答案 0 :(得分:1)
尝试使用Strcomp()
If StrComp (Sheets("Sheet3").Cells(x,2).Value,Sheets("Sheet3").Cells(7,"O").Value) = 0 Then ...
当StrComp为0时,表示完全匹配。