我是韩国数据分析师。我使用韩语版Windows 7和操作系统。
我在VBA(Excel)中遇到instr
的问题。
在正常情况下,
instr
在“C2”处生成准确数字,表示“A2”字符串
即使是韩国人,日本人(平假名)也没有问题。 请原谅我不能再抽样了 因为我在这个网站上没有足够的声誉。
但是,当我使用日语 - 片假名时总会出现错误 错误消息低于句子。
发生'7'运行时错误,内存不足
我对这只有一个错误感到尴尬 并试图解决这个问题, 但还是不知道怎么做。
我希望有人建议我提出好的意见和解决方案 感谢
答案 0 :(得分:0)
我无法在我的英文Excel 2013 / Win7中复制此问题。
但是,我之前在旧的excel版本中看到过这样的问题,并且很可能,下面应该可以工作。
Sub instr() Range("C2") = InStrB(1, Range("A2"), Range("B2"), 1) End Sub
Sub instr() Range("C2") = InStr(1, StrConv(Range("A2"), vbUnicode), StrConv(Range("B2"), vbUnicode), 1) End Sub
无论您选择何种方法,如果输入字符串不是半宽字符,则返回位置值需要除以2。 (在最近的excel中,半宽字符已经消失,我认为你的excel太旧了。升级它是最好的选择。)