Answers:
在Google Spreadsheets中,我会做些不同。
=COUNTA(SPLIT(A1, " "))
该SPLIT
功能仅在Google Spreadsheet中可用,并将在每个空格(" "
)上拆分单元格的内容。该COUNT
函数将仅对实例计数。
Excel公式给出了相同的答案,但更加费力:
=LEN(TRIM(A1))-LEN(SUBSTITUTE(A1," ",""))+1
请参阅以下答案,了解哪些公式是Google Spreadsheet特有的:https :
//webapps.stackexchange.com/a/44719/29140
如果您要在某个单元格范围内(例如A1:A25
)执行此操作,则可以使用上面的公式,其中CHAR(32)
空格字符为" "
=COUNTA(SPLIT(ARRAYFORMULA(CONCATENATE(A1:A25&CHAR(32)));CHAR(32)))
这适用于空白单元格,但初始单元格为空白时除外。
另一个:
=COUNTA(SPLIT(TRIM(A1&" #")," "))-1
这只是在目标单元格中的任何内容的末尾添加了一个空格和井号,包括将其添加到null,因此永远不会出现任何错误。然后,我们只是在最后减去临时的“假空间”。
=ARRAYFORMULA(IF(LEN(A3:A),
MMULT(IF(IFERROR(SPLIT(IF(LEN(A3:A), A3:A, ), " "))<>"", 1, 0),
ROW(INDIRECT("A1:A"&COUNTA(IFERROR(
QUERY(IF(IFERROR(SPLIT(IF(LEN(A3:A), A3:A, ), " "))<>"", 1, 0), "limit 1", 0)))))^0), ))
=ARRAYFORMULA(IF(LEN(A3:A), LEN(REGEXREPLACE(A3:A, "[^\s]", ))+1, ))
=COUNTA(SPLIT(A1, " "))-IF(A1 = "",1,0)