使用InStr在单元格中搜索两个单独的字符串

时间:2018-06-20 15:11:36

标签: vba excel-vba excel

我有一个条件,如果在单元格A1中可以找到“ iPad Pro 10.5”,则将在单元格H1中输入“ PRO1 10.5”。但是,格式会有所不同,并且A1中的“ iPad Pro”和“ 10.5”可能会分开-例如:

  

“ Apple iPad Pro 2nd Gen. 64GB,Wi-Fi,10.5英寸太空灰”

对于这样的情况,我应该如何搜索这两个分开的字符串并以所需的结果结尾?还有其他几种尺寸和型号也需要进行特定的分类。

这是我当前的代码

For Each cell In SrchRng
    If InStr(1, cell.Value, "iPad Pro 10.5", vbTextCompare) > 0 Then
        cell.Offset(0, 7).Value = "PRO1 10.5"
    End If
Next cell

2 个答案:

答案 0 :(得分:1)

您可以使用Like运算符查看字符串是否与模式匹配。

If cell.Value Like "*iPad Pro*10.5*" Then

如果单元格中包含“ iPad Pro”和“ 10.5”均为子字符串的任何字符串,则该字符串为匹配项。

答案 1 :(得分:0)

只需更改条件:

export const dashboardInitEpic = (action$: any) =>
    action$.ofType(InitActionTypes.DASHBOARD_INIT)
      .mergeMap((action: ActionDashboardInit) =>
         concat$(
           of$(fetchConfig(action.payload)),
           of$(fetchPermission(action.payload)),
           action$.ofType(ActionTypes.FETCH_CONFIG_FULFILLED).take(1),
           action$.ofType(ActionTypes.FETCH_PERMISSION_FULFILLED)
             .take(1)
             .switchMap(() => of$({type: InitActionTypes.DASHBOARD_INIT_COMPLETE}))
      )
    );

If InStr(1, cell.Value, "iPad Pro 10.5", vbTextCompare) > 0 Then