【发布时间】:2015-12-08 09:26:50
【问题描述】:
我在比较两个字符串时遇到问题。该方法似乎无法以某种方式工作。我尝试了以下功能:
-
方法:
If StrComp(logic_string, RSTA_ISIN_clean) Then rng.Offset(0, 16) = "OK(ISIN in RSTA)" rng.Offset(0, 16).Interior.Color = 5296274 Else rng.Offset(0, 16) = "NG(ISIN not RSTA or check RSTA)" rng.Offset(0, 16).Interior.Color = 255 End If -
方法:
If InStr(1, RSTA_ISIN_clean, logic_string, vbTextCompare) Then rng.Offset(0, 16) = "OK(ISIN in RSTA)" rng.Offset(0, 16).Interior.Color = 5296274 Else rng.Offset(0, 16) = "NG(ISIN not RSTA or check RSTA)" rng.Offset(0, 16).Interior.Color = 255 End If
在 logic_string 中我的值为“FR0012915700”,在 RSTA_ISIN 中我的值为 =“Old ISIN: FR0012915700”
我要做的就是检查 RSTA_ISIN 是否在 logic_string 中,如果是,我想在单元格中写入 OK。 (试图在这里获取一个 contains 方法)
可能是 logic_string 有问题,因为它有时会给我空格 -> 所以 logic_string 在调试模式“FR0004052561”下看起来像这样 -> 我尝试使用 Trim 修剪空格,但这也不起作用。
我也尝试过 InStr 函数,但也没有用
有人可以帮忙吗
这是我在调试模式下得到的:
【问题讨论】:
-
在我的系统上尝试代码时,我得到了与函数匹配的结果,并且 TRIM 看起来也可以正常工作。能否告知 RSTA_ISIN_clean 和 logic_String 的值是如何设置的?
-
代码对我来说也很好
-
嗨,很抱歉,我想检查 RSTA_ISIN 是否在 logic_string 中,或者换句话说,logic_string 是否包含 RSTA_ISIN
标签: string excel vba compare string-comparison