vba - 使用 instr 获取两个文本的完全匹配

标签 vba excel

我怎样才能完全匹配 InStr 函数中的两个文本?

现在我的代码如下

If InStr(1, arrcallpara(i), strvarcalll) > 0 Then
  blncalling = True
End If

arrcallpara(i) 包含值“1234”或“12345”或“1234567”,strvarcalll 包含“1234567”

只有当 arrcallpara(i) 和 strvarcallll 完全匹配时,才应满足“If”条件。

最佳答案

为什么使用 InStr ?您可以使用 = 轻松检查 2 个字符串是否匹配。 .

无论如何,假设您以某种方式被迫使用它,我会首先检查第二个字符串是否包含,然后检查第二个是否包含在第一个字符串中。应该这样做,但要完全确定您还可以检查长度是否相等:

If InStr(1, arrcallpara(i), strvarcalll) <> 0 And InStr(1, strvarcalll, arrcallpara(i)) <> 0 And Len(arrcallpara(i)) = Len(strvarcalll)

关于vba - 使用 instr 获取两个文本的完全匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28980919/

相关文章:

excel - 无法理解为什么 VBA 在验证 If 语句时退出我的 For-Next 循环

excel - 如何在不引用 VBA 工作表的情况下引用结构化表

Excel一次删除多列中的重复项

mysql - 如何从另一个 Excel 报表调用一个 Excel 报表?

vba - Excel UDF查找具有给定值的范围内的第一个和最后一个单元格-运行缓慢

excel - 如何删除Excel VBA范围内的列

Excel - 单独复制列中的单元格

python - 如何删除从pandas中的excel读取的重复列

vba - Outlook VBA - 每半小时运行一次代码

json - 在数组中循环 JSON 以获得 VBA 中的相同值