如何用Excel公式根据income匹配对应阈值区间的repayment rate?
学生贷款还款率匹配:替代嵌套IF的Excel公式方案
原始阈值与还款率对应表
| Threshold ($) | Repayment rate (%) |
|---|---|
| 51,550 | 0 |
| 59,519 | 1 |
| 63,090 | 2 |
| 66,876 | 2.5 |
| 70,889 | 3 |
| ... | ... |
匹配规则
若
income小于某一threshold(第一列),则对应repayment rate为第二列数值:
- 收入=50,000 < 51,550 → 还款率=0%
- 收入=51,550 < 59,519 → 还款率=1%
- 收入=59,518 < 59,519 → 还款率=1%
推荐公式:VLOOKUP近似匹配(基础友好)
步骤1:调整数据结构
为适配基础公式,在现有阈值表最上方添加一行区间起始值,调整后的数据如下:
| Threshold ($) | Repayment rate (%) |
|---|---|
| 0 | 0 |
| 51,550 | 1 |
| 59,519 | 2 |
| 63,090 | 2.5 |
| 70,889 | 3 |
| ... | ... |
调整后,每个阈值代表对应还款率的最低收入标准:
- 0%:收入<51,550(即收入≥0且<51,550)
- 1%:收入≥51,550且<59,519
- ...以此类推
步骤2:使用VLOOKUP公式
假设:
- 调整后的阈值数据位于
A2:A21(共20行) - 对应的还款率位于
B2:B21 - 需要计算的收入放在单元格
C2
公式如下:
=VLOOKUP(C2, A$2:B$21, 2, TRUE)
公式说明
C2:待计算的收入值A$2:B$21:阈值与还款率的数据源区域(加$符号是为了下拉公式时固定区域)2:返回数据源中第2列(还款率)的值TRUE:启用近似匹配,要求阈值列(A列)必须按从小到大排序(你的原始数据已符合,调整后依然保持升序)
近似匹配逻辑:自动找到小于等于收入值的最大阈值,返回对应还款率,完全符合规则要求。
无需调整原始数据的备选方案:INDEX+MATCH
如果不想修改原始数据,可使用以下数组公式(新版Excel直接输入,旧版需按Ctrl+Shift+Enter确认):
=INDEX(B$2:B$21, MATCH(TRUE, A$2:A$21>C2, 0))
逻辑:找到第一个大于收入值的阈值,返回其对应的还款率,完全匹配原始规则。
内容的提问来源于stack exchange,提问作者Vero
相关产品推荐
相关产品推荐

