我在vba
:
str1 = Sheet1.Cells(2, 9)
str2 = Sheet1.Cells(2, 10)
cell(2,9)="توابع تبریز"
cell(2,10)="تبریز"
我写了这段代码:
if trim(str1) like "*"+trim(str2) then
msgbox "ok"
end if
但是if if block not working和Like函数返回false结果。
但是当我写这段代码时:
a="توابع تبریز " like "*"+"تبریز"
但现在返回True!会发生什么?
答案 0 :(得分:1)
+
运算符不是问题。虽然建议使用&
代替+
我猜这种语言是乌尔都语。如果是,那么我只记得它是从左到右书写的。那么在这种情况下试试这个
If str1 Like "*" & str2 Then 'Remove the trim
你必须删除修剪,因为它修剪空格,因此外卡不起作用。见下面的例子。
实施例
Sub Sample()
'~~> Trying to imitate Urdu in reverse
Cells(2, 9) = " aaaa bbbb "
Cells(2, 10) = " bbbb "
str1 = Cells(2, 9)
str2 = Cells(2, 10)
If str1 Like "*" & str2 Then MsgBox "Hey"
End Sub
答案 1 :(得分:0)
您没有正确连接字符串。您当前正在使用+
这是一个数学运算符。将您的+
替换为&
,如下所示:
If Trim(str1) Like "*" & Trim(str2) Then