Google Sheets:如何对比单元格公式与字符串检测公式变更?
解决Google Sheets中对比单元格公式与预期字符串的问题
- 核心问题是直接引用单元格时读取的是计算结果,得用
FORMULATEXT()函数专门读取单元格里的公式文本。 - 把你原来的公式改成这样就能正常判断:
=IF(FORMULATEXT(A1)="=FILTER(Dashboard!A2:A, Dashboard!C2:C*1 = TODAY())", TRUE, FALSE) - 额外处理细节:
- 如果目标单元格没有公式(是纯文本或数值),
FORMULATEXT()会返回#N/A错误,加个IFERROR()就能避免:=IF(IFERROR(FORMULATEXT(A1),"")="=FILTER(Dashboard!A2:A, Dashboard!C2:C*1 = TODAY())", TRUE, FALSE) - 字符串匹配是精确的,要保证你写的预期公式和目标单元格里的公式在空格、大小写(公式本身不区分大小写,但字符串匹配区分)上完全一致。
- 顺带提下你遇到的删除数据后引用行变更的问题:哪怕用了绝对引用$A$1,删除行后Google Sheets还是会自动调整行号。要锁定引用不被改动,可以用
INDIRECT(),比如把Dashboard!A2:A改成INDIRECT("Dashboard!A2:A"),这样删除行时引用不会跟着变。
- 如果目标单元格没有公式(是纯文本或数值),
内容的提问来源于stack exchange,提问作者snowblind
相关产品推荐
相关产品推荐

