MICROSOFT

EP02. “Goal Seek 单变量求解”

首页 Microsoft 工具 Excel · Data Analysis · What-If Analysis · EP02
约 5 分钟· #EP02#Excel#What-If Analysis
🔒 登录后可标记已读
  • Goal Seek(单变量求解)反过来解决问题——已经知道想要的公式结果,但不知道要把哪个输入值调整成多少才能得到这个结果
  • 用 Goal Seek 能让 Excel 自动帮你倒推出这个输入值
  • 这篇笔记用成绩计算、贷款月付款两个例子演示,也说明它的精度调整和局限性
  • 前置知识是熟悉基本公式引用
  • 学完能省掉自己反复试算的时间

重点内容


适用版本

桌面版通用(Excel 365 / 2021 / 2019 等)。


示例一:反推考试成绩

场景:B7 是根据几次考试成绩算出的最终成绩公式,B5 是第四次考试的成绩(还没考完,先假设一个数),想知道第四次要考几分,最终成绩才能到 70 分。

  1. 在 Data(数据)选项卡的 What-If Analysis 组中点击 Goal Seek
  2. Set cell(目标单元格)选择 B7
  3. To value(目标值)输入 70
  4. By changing cell(可变单元格)选择 B5
  5. 点击 OK

结果:"第四次考试考 90 分,最终成绩正好是 70 分"。

[截图:Goal Seek 对话框,Set cell/To value/By changing cell 三个输入框已填好]


示例二:反推贷款金额

场景:B5 用 PMT 函数算出每月还款额,B3 是贷款金额,想知道贷款金额是多少才能让月付款正好是 RM1500。

  1. 打开 Goal Seek
  2. Set cell 选 B5
  3. To value 输入 -1500(因为是支出,要用负值)
  4. By changing cell 选 B3
  5. 点击 OK

结果:"贷款金额 RM250,187 会产生 RM1500 的月付款"。


提高精度

Goal Seek 有时只能得到近似解。若要更精确:

  1. File(文件)→ Options(选项)→ Formulas(公式)
  2. 找到 Calculation options(计算选项),把 Maximum Change(最大误差)的数值调小(默认是 0.001)
  3. 点击 OK 后重新执行一次 Goal Seek,会得到更精确的解

[截图:Excel Options → Formulas,Maximum Change 输入框位置]


局限性

  • Goal Seek 只能处理一个输入单元格对应一个输出(公式)单元格的情况,如果需要同时调整多个输入变量才能达到目标,要改用 Solver(见 Solver 分类)
  • 对不连续的函数(例如 y = 1/(x-8) 在 x=8 处不存在),如果起始猜测值落在不连续点的错误一侧,Goal Seek 可能找不到解——这时候换一个起始输入值(比如让起点大于 8)通常能解决

Goal Seek 还是 Solver,怎么选

工具适合场景备注
Goal Seek只有一个输入变量要调整,去凑出一个目标结果操作简单,几步搞定
Solver有多个输入变量、或还要满足额外的限制条件需要另外安装加载项,见 Solver 分类

实操示例

场景:定价 y = 1/(x-8),想让 y 等于某个目标值,但从 x < 8 开始尝试找不到 x > 8 的解,因为函数在 x=8 处间断(不能除以 0)。这种情况下换成从 x > 8 的某个值开始尝试 Goal Seek,就能顺利找到解。


学完你会

  • ✅ 用 Goal Seek 反推出要达成目标结果,某个输入值该设成多少
  • ✅ 遇到近似解不够精确时,调整 Maximum Change 提高精度
  • ✅ 判断问题该用 Goal Seek 还是 Solver,不再拿单变量工具硬解多变量问题

常见错误

  • To value 该填负数(支出/成本类)却填了正数,导致算出的输入值方向错误
  • 遇到近似解不够精确,不知道要去 Formulas 选项调整 Maximum Change
  • 问题本身涉及多个输入变量,却硬用 Goal Seek(只支持单变量),应该换成 Solver

Sources

Blog / Website:

  1. Goal Seek