VBA 字符串比较失败

VBA string comparison failure

我在比较两个字符串时遇到了一个有趣的问题。我从文件中读取数据,一切正常。但是后来同事给我发送了输入文件,这只是工作文件的 CTRL+C 和 CTRL+V。然后奇迹发生了! VBA 很困惑,无法比较两个简单的字符串,我摔倒了。

如果您看一下图片,您会发现如果条件是两个相同的字符串,则比较通过了,但它不应该通过。我有点困惑这是怎么发生的。

所以遇到这样的人?我真的开始考虑《终结者》中的机器革命之类的东西。 (文件都是用notepad++保存的,没有奇怪的字符之类的)

进度更新
所以我在下面的评论中尝试了一些人的提示。并以这样的方式结束

If CStr(Trim(rowArray(4))) <> (CStr("N/A")) Then

rowArray(4) 的内容仍然是 "N/A" 字符串,如上图所示,excel 仍然认为这个字符串不一样。我还在 pspad、netbeans 和普通记事本中保存了文件,问题仍然相同。

使用立即数window测试变量内容:

For i = 1 To Len(rowArray(4)): Print Asc(Mid(rowArray(4), i, 1)): Next

这将打印字符串中每个字符的 ASCII 值 - 您可以使用它来确定导致问题的额外字符。