VBA - 如何检查字符串变量/单元格是否包含另一个字符串变量?

时间:2017-10-13 10:43:36

标签: excel string vba excel-vba

基本上,我需要找到一种方法来检查String变量是否包含另一个String变量(或者最好是一个数组中的项)。这是我的情况:

我在Excel中有一个15k +字符串列表,另一个包含5k +字符串。第二个列表由3个字符长的缩写组成,第一个列表可能包含0到15个字符串,用“,”分隔。我的目标是计算每个缩写的每个出现次数。

我通过创建一个包含所有缩写的数组来解决这个问题。然后我希望循环通过15k +长列表5k +次,计算每个缩写的出现次数,改变每个循环寻找的缩写。但是我很难比较字符串......

我试过用InStr看看我是不是0。虽然之前我提到过一个字符串被变量搜索时它对我有用,但似乎寻求的表达式不能以这种方式放置。我一直在尝试使用Find或Application.Match,但有同样的问题...我想知道是否有一个我不知道的VBA功能?或者也许有人对自定义功能或完全不同的方法有所了解?我碰到了一堵砖墙......

提前感谢您的任何建议!我非常感激。

不幸的是我无法向您显示数据,因为它是客户的敏感数据,但这是我的循环:

With ActiveWorkbook
    For p = 1 To size
        For j = 6 To lrow
        a = .Sheets("Server View").Cells(j, 3).Value
        tmp = Apps(p)
        test = InStr(1, a, tmp)

            If test = 0 Then
            Else
                b = .Sheets("Server View").Cells(j, 9).Value
                If b = PROD Then
                    cval = .Sheets("temp").Cells(j, 3).Value
                    cval = cval + 1
                    .Sheets("temp").Cells(j, 3).Value = cval
                Else
                    cval = .Sheets("temp").Cells(j, 2).Value
                    cval = cval + 1
                    .Sheets("temp").Cells(j, 2).Value = cval
                End If
            End If
        Next j
    Next p
End With

0 个答案:

没有答案