数据分析

AI 公式生成器在 FP&A 中的定位:能用、慎用与不该用

ModelMonkey2026年5月8日阅读约 1 分钟

问题不在于生成器会写出错误的公式,而在于它写出的是一个对于从未见过你模型的工具来说"正确"的公式。

公式生成器不了解你的模型结构。它不知道 Assumptions!$B$3 存放的是预测起始日期,不知道你的 CF 标签页引用了 BS 表上一个在第0个月故意留空的辅助列,也不知道收入明细表(Rev_Detail)使用了名为 sku_volume_arr 的自定义命名范围。这些信息都需要你自己描述清楚——而如果你能把这些说得足够精确,大概率已经可以直接写出公式了。

这正是生成公式引入最危险的一类模型错误的根源:公式语法上完全正确,也能跑出一个数字,只是那个数字是错的。比如下面这个公式:

=SUMIFS('P&L'!C:C,'P&L'!B:B,">="&Assumptions!$B$3,'P&L'!A:A,"Operating Expenses")

看起来没有任何问题。但如果你的损益表列布局与生成器所假设的不同,或者由于三个版本迭代前遗留下来的命名惯例,A 列里存的其实是"Opex"而不是"Operating Expenses",那么这个公式会静默地返回零值,不报任何错误。这个零值向上流入 EBITDA,你的银行财务契约条款分析就已经悄悄出错了。

这类跨标签页的引用错误尤为危险,因为它们完全不可见。关于防范此类错误的结构化约定,可以参考多标签页公式结构规范一文——但在缺乏上下文的情况下运行的公式生成器,在真实模型中违反这些约定的概率约为30%至40%,这一数字来自2026年第一季度对若干个8至12个标签页财务模型的非正式测试。


上下文缺失,才是核心问题

财务模型中所有的公式生成器失效案例,追根溯源都指向同一个问题:工具在真空中生成公式,你再把它嫁接到一个有历史沿革、有命名惯例、有依赖关系的在用模型中——而它从未见过那个模型。

这个问题有解——但前提是生成器能够访问你的实际表格结构。ChatGPT、Gemini 以及独立的公式生成工具都做不到这一点。它们只能基于你粘贴过来的内容工作,而那几乎永远不是完整信息。你粘贴了某一个标签页的列标题,得到的公式是为那个标签页定制的。粘贴进模型后,公式在第47行刷新时断掉了,因为还有另外三个标签页同时向那一列输入数据。

截至2026年5月,真正能弥补这一差距的工具,是直接嵌入电子表格内部、能在生成公式前读取模型结构的插件——涵盖列标题、命名范围、已有公式以及跨标签页的引用关系。ModelMonkey 就是这样工作的:它在写公式前会读取你的活动区域和表格元数据,因此生成的 SUMIFS 引用的是你实际的列布局,而不是一个假设的布局。

实际使用中的差别体现在:你不需要说"写一个汇总第三季度企业客户收入的 SUMIFS",而是直接说"把损益表中第三季度企业客户的收入汇总到这个单元格",工具便能自动解析出正确的列引用,无需你手动指定。对于一个有10个以上标签页、命名惯例自成一套的模型而言,这才是真正重要的差距所在。


仍然需要人工判断的公式

即便拥有完整的上下文,有些公式决策也不应该被委托出去。

终值(Terminal Value)计算公式。 无论使用戈登增长模型还是退出乘数法,公式结构本身就编码了对模型意图的假设。生成器可以写出 =FCFF_Year5/(WACC-g),但它不知道你的稳态增长率是硬编码在 Assumptions!$C$12 里,还是与敏感性分析的切换开关相连。它会做出一个选择,而那个选择未必符合模型的实际意图。

WACC 构建公式。 WACC 公式看起来简洁,实则包含大量判断:用边际税率还是有效税率?用有杠杆 Beta 还是无杠杆 Beta?债务成本是税前还是税后?生成器写出 =(E/(E+D))*Ke+(D/(E+D))*Kd*(1-t) 时,并不了解你是如何搭建输入项的。公式会正常运行,结果可能给出8.3%,而正确答案是9.1%。

涉及循环引用的公式。 利息支出与平均债务余额挂钩、循环信贷额度与最低现金余额联动——这类公式需要经过审慎的结构设计。是否启用迭代计算、是否使用手动插值,这些是判断决策,不是语法问题,必须由建模者亲自决定。


适用场景速查

场景类型推荐用法原因
批量 SUMIFS(同结构,多条件)✅ 交给生成器模式固定,生成后逐一核对引用即可
EDATE 日期链、财务期间推算✅ 交给生成器语法明确,上下文依赖低
查找函数脚手架(VLOOKUP/INDEX/MATCH✅ 交给生成器重复性高,节省键入时间
含条件的格式规则、IFERROR 嵌套✅ 交给生成器逻辑标准化,失效风险低
终值(Terminal Value)公式❌ 人工编写编码了模型假设,生成器无法感知意图
WACC 构建❌ 人工编写输入项搭建方式决定结果,判断不可外包
含循环引用的公式❌ 人工编写需要结构性决策,不是纯语法问题
流入核心 KPI 的跨标签页公式⚠️ 生成后必须逐一追踪引用链静默出错风险高,影响面广

真正有效的实操工作流

从公式生成器中获益最大的分析师,并不是用它在复杂模型里从头生成公式,而是将它作为语法加速器——用于那些他们已经知道怎么写、只是想少敲几次键盘的公式。

经过验证的工作流如下:

  1. 开口之前,先想清楚需要什么公式、它应该引用哪些数据。
  2. 把列标题和标签页名称提供给生成器,确保它能得出正确的引用。
  3. 粘贴之前先审查输出结果——尤其是所有跨标签页的引用。
  4. 凡是会流入 CFO 关注的 KPI 的单元格,绝不在未追踪完整引用链的情况下粘贴生成公式。

最后这条规则听起来不言而喻,但在截止日期压力下,当生成器递来一个"看起来正确"的公式时,这条规则被违反的频率远比想象的高。

对于常规性工作——SUMIFS 批量生成、EDATE 日期链、查找函数脚手架——放手让生成器去跑。但凡涉及终值计算、投资回报分析或三表联动的部分,请逐一手动核查每一个引用。


常见问题

公式生成器和直接问 ChatGPT 写公式有什么区别?

本质区别在于上下文。ChatGPT 只能根据你粘贴的内容生成公式,无法感知你的实际模型结构;而嵌入电子表格的公式生成器插件能在生成前读取列标题、命名范围和跨标签页引用,从而输出与你实际表格匹配的公式,而不是基于假设布局的"通用"公式。

公式生成器生成的公式会出现语法错误吗?

较少见。主流工具在标准函数的语法层面已相当可靠。更常见的风险是"语法正确、结果错误"——公式能运行,但引用了错误的列,或使用了与你表格不匹配的文本条件,静默返回0或错误数值。这类错误比语法报错更难发现。

哪类公式最适合交给生成器处理?

重复性高、结构固定的公式收益最大:批量 SUMIFSEDATE 日期序列、IFERROR 嵌套、条件格式规则等。这类公式有成熟的解题模式,生成结果稳定,只需核对引用即可使用。

涉及 WACC、终值等核心假设的公式,生成器能用吗?

不建议直接采用。这类公式的结果取决于你如何搭建输入项和假设结构,而生成器无从感知这些设计决策。它能写出语法正确的公式,但对税率类型、Beta 处理方式或增长率来源的选择,可能与你的模型设计不符,且不会给出任何提示。

如何判断生成的公式是否可以安全使用?

关键检查点:① 所有跨标签页引用(标签页名、列字母、行号)是否与你的实际表格一致;② 文本条件(如"Operating Expenses")是否与表格中的实际写法完全匹配;③ 公式的计算结果是否与手动估算的量级相符。凡是流入核心 KPI 的单元格,务必追踪完整引用链后再投入使用。


总结

在输入清晰、逻辑标准的公式场景下,公式生成器对 FP&A 工作确实有实质性帮助。在多标签页财务模型中,一旦缺乏结构上下文,它就会失效——而失效的方式是公式能跑、结果却悄悄出错。能够在生成前读取表格结构的上下文感知工具,比"粘贴碰运气"的做法要可靠得多。对于那些编码了模型假设而非纯粹语法的公式,人工判断始终不可替代。

查看 ModelMonkey 方案——支持 Google Sheets 与 Excel。