在单元格内search逗号分隔的数字

我有一个以逗号分隔的数字,例如:

100633,101 123,12 100633,1000 

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

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

检查单元格是否包含子string

这里是一个公式, 100633考虑逗号分隔值,在单元格A1中search文本100633

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

它处理正确的文字,如1,2,3,999100633999

您也可以使用FIND而不是SEARCHfunction。 FIND区分大小写。 使用SEARCH可以使用通配符。

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

 =ISNUMBER(SEARCH(100633,A1)) 

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

 =IF(ISNUMBER(SEARCH(100633,A1)),'yes','no) 
 =IF(FIND("100633",E11)=1,"Number Exists","Not Exists") 

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

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

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

VBA解决scheme:

 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) 

在这里输入图像说明

使用以下方法…

  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; }