Excel VBA Like Function无法正常工作

时间:2014-11-25 10:08:32

标签: vba excel-vba excel

我在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!会发生什么?

2 个答案:

答案 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