如何在 Excel 中计算 IRR:公式、示例与模板完整指南

Excel 中有两个函数可以轻松计算 IRR:IRR 适用于等间隔现金流,XIRR 适用于日期不规则的情况。本文将手把手教你如何使用这两个函数,包括可直接复制的公式、计算表格和常见错误的解决方法。

快速答案: 在 Excel 中算 IRR,用 =IRR(values),其中 "values" 是现金流所在的单元格范围(初始投资填负数,回报填正数)。日期不规则时,用 =XIRR(values, dates)

没有 Excel? 使用我们的 免费在线 IRR 计算器 — 只需输入现金流即可获得即时结果。

IRR 函数:基本语法

Excel 的 IRR 函数用于计算等间隔现金流的内部收益率(比如每年、每月或每季度一笔)。

=IRR(values, [guess])
参数 说明 是否必需?
values 现金流所在的单元格范围。至少要有一个负数(投资)和一个正数(回报)。
guess 对 IRR 的初始估计。默认 10%(0.1)。遇到 #NUM! 错误时可以试着调整。
注意: IRR 函数假设现金流是等间隔的。如果日期不规则,请用 XIRR。

示例 1:简单投资 IRR

来算算一笔 1 万元投资在 5 年内的 IRR:

A B
1 年份 现金流
2 0(初始) -¥10,000
3 1 ¥2,000
4 2 ¥2,500
5 3 ¥3,000
6 4 ¥3,500
7 5 ¥4,000
8 IRR =IRR(B2:B7)
9 结果 13.45%

操作步骤

  1. 在一列中输入现金流(本例是 B2:B7)
  2. 初始投资写负数(-¥10,000)
  3. 回报写正数(¥2,000、¥2,500 等)
  4. 在空白单元格输入=IRR(B2:B7)
  5. 按回车 — Excel 返回 0.1345(13.45%)
小技巧: 把结果单元格格式设为百分比(Ctrl+Shift+5),就能显示 13.45% 而不是 0.1345。

XIRR 函数:不规则日期的现金流

现实中的投资很少有完美的年度现金流。股息可能季度到账,可能年中追加资金,或者随时卖掉一部分。这时候就轮到 XIRR 登场了。

=XIRR(values, dates, [guess])
参数 说明 是否必需?
values 现金流范围(投资为负数,回报为正数)
dates 与每笔现金流对应的日期范围
guess 可选估计值。默认为 10%。

示例 2:实际 XIRR 计算

计算一个包含不规则投入和取出的投资组合的 XIRR:

A B C
1 日期 现金流 说明
2 2023/1/15 -¥25,000 初始投资
3 2023/4/10 -¥5,000 追加投资
4 2023/7/22 ¥1,200 收到股息
5 2023/10/5 -¥3,000 追加投资
6 2024/1/8 ¥1,500 收到股息
7 2024/6/30 ¥2,000 部分卖出
8 2024/11/15 ¥38,500 最终卖出
9 XIRR =XIRR(B2:B8,A2:A8)
10 结果 17.75% 年化收益率
关键点: XIRR 始终返回年化收益率,不管你的投资期限是多长。

IRR 还是 XIRR?怎么选?

用 IRR: 现金流等间隔发生(如每年、每月)。适合标准贷款、债券或简单投资建模。

用 XIRR: 现金流有具体日期,间隔不规则。适合跟踪包含股息、追加投资或部分卖出的实际投资组合。

常见坑: 对月度现金流用 IRR 但不做调整。如果你对月度数据用 IRR,结果要乘 12 才是年化 IRR。更简单的办法是直接用 XIRR 配合实际日期。

常见错误怎么解决?

#NUM! 错误

问题: Excel 迭代 20 次还没算出结果。
解决:
  • 加个 guess 参数:=IRR(B2:B7, 0.2)
  • 检查现金流是否同时有负数和正数
  • 确认数值不是文本(可用 VALUE() 转换)

#VALUE! 错误

问题: XIRR 认不出日期。
解决:
  • 确保日期单元格格式设为日期
  • 用 DATEVALUE() 转换文本日期
  • 检查系统的日期格式设置

IRR 返回 0% 或结果不对

问题: 现金流可能都是同一符号。
解决:
  • 初始投资应为负数(钱流出去)
  • 回报应为正数(钱流进来)
  • 检查是否有隐藏的空格或格式问题

进阶技巧

月度 IRR 转年度

如果你算的是月度现金流的 IRR:

=(1 + IRR(B2:B13))^12 - 1

算 MIRR(修正内部收益率)

MIRR 解决了 IRR 的再投资假设问题:

=MIRR(values, finance_rate, reinvest_rate)

示例:=MIRR(B2:B7, 5%, 8%) — 假设融资成本 5%,再投资收益 8%。

用 NPV 验证 IRR 对不对

想确认 IRR 算得对不对?用该利率算 NPV,结果应该接近零:

=NPV(IRR_result, B3:B7) + B2

模板结构

下面这个结构可以直接复制到 Excel 里用:

A B C
1 日期 现金流 备注
2 [输入日期] [输入金额] [说明]
3 ... ... ...
10
11 IRR(年度) =IRR(B2:B9) 用于等间隔
12 XIRR =XIRR(B2:B9,A2:A9) 用于具体日期
13 总投资 =SUMIF(B2:B9,"<0") 投资金额合计
14 总回报 =SUMIF(B2:B9,">0") 回报金额合计

核心要点

  • IRR 函数=IRR(values) — 用于等间隔现金流
  • XIRR 函数=XIRR(values,dates) — 用于具体日期
  • 初始投资应为负数(资金流出)
  • 回报应为正数(资金流入)
  • #NUM! 错误:添加 guess 参数或检查现金流符号
  • XIRR 通常更适合实际投资跟踪

学会了 Excel 算 IRR,还可以继续看这些相关主题: