在单元格中搜索以逗号分隔的数字

时间:2014-09-09 04:46:34

标签: excel excel-formula

我有一个包含许多逗号分隔数字的列,例如:

   100633,101

    123,12

   100633,1000

如何搜索特定单元格是否包含数字100633

5 个答案:

答案 0 :(得分:2)

回应@ Jean-FrançoisCorbett的正确评论并基于以下答案

Check whether a cell contains a substring

此处是一个公式,仅考虑逗号分隔值,在单元格A1中搜索文本100633

=ISNUMBER(SEARCH(",100633,",","&A1&","))

它正确处理1,2,3,999100633999

之类的文字

您也可以使用FIND代替SEARCH功能。 FIND区分大小写。使用SEARCH,您可以使用通配符。

答案 1 :(得分:0)

假设第一个目标单元格在A1中,则返回TRUE或FALSE:

=ISNUMBER(SEARCH(100633,A1))

如果为true或false则返回自定义值:

=IF(ISNUMBER(SEARCH(100633,A1)),'yes','no)

答案 2 :(得分:0)

=IF(FIND("100633",E11)=1,"Number Exists","Not Exists")

公式搜索文本并返回它是否存在于单元格中

更新: 尝试使用以下excel公式:

=MID(E18,FIND("100633",E18),6)

答案 3 :(得分:0)

VBA解决方案:

Function CommaSeparatedListContains(ByVal csv As String, ByVal v As String, _
    Optional ByVal delimiter As String = ",") As Boolean

    Dim i As Long
    Dim splitCsv() As String
    splitCsv = Split(csv, delimiter)
    CommaSeparatedListContains = False
    For i = LBound(splitCsv) To UBound(splitCsv)
        If splitCsv(i) = v Then
            CommaSeparatedListContains = True
            Exit Function
        End If
    Next i
End Function

使用示例:

=CommaSeparatedListContains(A1,100633)

enter image description here

答案 4 :(得分:-1)

使用以下方法...

    private boolean isNumberInvolved(String column, String number_to_check){
        String[] numberArray = column.split(",");
        for(int i=0; i<numberArray.length; i++){
            if(numberArray[i].equals(number_to_check))
                return true;
        }
        return false;
    }