计算单个单元格中逗号分隔列表中的项目

nei*_*man 5 microsoft-excel microsoft-excel-2010

是否有一个公式可以计算单元格中的项目数,每个项目用逗号分隔?

例如:

CELL A1 =“戴尔、苹果、三星、宏碁”

公式将返回 4。

Gar*_*ent 8

使用A1中的数据,在另一个单元格中:

=LEN(A1)-LEN(SUBSTITUTE(A1,",",""))+1
Run Code Online (Sandbox Code Playgroud)

笔记:

该公式不会处理如下字符串:

,,,,,,,A,,,B,,,,
Run Code Online (Sandbox Code Playgroud)

  • 除了尾随逗号,它还将一个空单元格计为 1。这可以解决这两个问题,包括尾随逗号后的尾随空格: =IF(ISBLANK(IF(RIGHT(TRIM(A1),1)=",",LEFT(T​​RIM) (A1),LEN(TRIM(A1))-1),A1)),"0",LEN(TRIM(IF(RIGHT(TRIM(A1),1)=",",LEFT(T​​RIM(A1), LEN(TRIM(A1))-1),A1)))-LEN(SUBSTITUTE(TRIM(IF(RIGHT(TRIM(A1),1)=",",LEFT(T​​RIM(A1),LEN(TRIM(A1) ))-1),A1)),",",""))+1) (3认同)