Google Sheets条件格式:基于列中数字部分检测重复项
解决Google表格条件格式检测client_id前缀重复问题
原公式的问题分析
- 列引用错误:你提到表格仅含
client_id列(对应A列),但公式里误用了$B$8,应该统一用A列引用。 - 未处理无“-”的单元格:当某个
client_id不含“-”时,SEARCH("-", ...)会返回错误,触发“Function SEARCH parameter 2 value should be non-empty”报错。
修正后的条件格式公式
情况1:所有client_id都包含“-”
如果确定所有client_id都有“-”分隔符,用下面的公式即可:
=SUMPRODUCT(TRIM(LEFT($A$8:$A$9999971, SEARCH("-", TRIM($A$8:$A$9999971)) - 1)) = TRIM(LEFT(A8, SEARCH("-", TRIM(A8)) - 1))) > 1
注:
SEARCH("-", ...) - 1是为了排除“-”本身,只提取前面的数字部分。
情况2:存在不含“-”的client_id
如果有部分client_id没有“-”,需要用IFERROR兼容处理(无“-”时直接取整个单元格内容):
=SUMPRODUCT(TRIM(IFERROR(LEFT($A$8:$A$9999971, SEARCH("-", TRIM($A$8:$A$9999971)) - 1), TRIM($A$8:$A$9999971))) = TRIM(IFERROR(LEFT(A8, SEARCH("-", TRIM(A8)) - 1), TRIM(A8)))) > 1
公式说明
TRIM():去除单元格内容前后的空格,避免因空格导致的匹配错误。LEFT(..., SEARCH("-", ...)-1):提取“-”之前的所有字符。IFERROR(..., TRIM(...)):当单元格不含“-”时,直接使用原单元格的修剪后内容作为匹配依据。SUMPRODUCT():统计整个范围内与当前单元格前缀(或整值)匹配的次数,次数大于1则标记重复。
内容的提问来源于stack exchange,提问作者dev_community
相关产品推荐
相关产品推荐

