如何查找包含数字子集的所有数字

时间:2014-07-03 07:15:52

标签: excel-vba vba excel

我有一个数字列表,我想找到包含数字子集的所有数字

例如:

column A
34523423
43243444
3443243
342323
342345
3445454
5345365

鉴于上面的列表,我想找到包含子集44的所有数字。如果匹配,则应将该号码复制到B列。
因此,在此示例中,列B应包含

43243444
3443243
3445454  

这是我到目前为止所做的:

Sub find_numb()

Dim i as integer 
Dim j as integer 

i = 1
j = 1

'Cells(6, 12) will contain the number that I am looking up

look_up = Cells(6, 12)

Do While i < 605

If InStr(look_up, Cells(i, 1)) Then
    Cells(j,2) = Cells(i, 1)
    j = j + 1
End If
i = i + 1
Loop


End Sub

这导致只有相同的数字,例如,如果我的输入是43,而在我的列表中是43和4443,那么输出只有43。

1 个答案:

答案 0 :(得分:1)

你有点交换了 InStr 参数,所以试试这个:

Do While i < 605
    If InStr(Cells(i, 1), look_up) <> 0 Then
        Cells(j,2) = Cells(i, 1)
        j = j + 1
    End If
    i = i + 1
Loop