理论看完了,动手写几个真实项目中一定会用到的公式。
多维表格模拟器[4 行 · 5 列]
| # | 文本 | 数字 | 单选 | 人员 | 日期 | |
|---|---|---|---|---|---|---|
| 01 | ? | |||||
| 02 | ? | |||||
| 03 | ? | |||||
| 04 | ? |
案例一:客户等级自动判断
按金额自动分三档:
IFS([金额] > 100000, "A 级", [金额] > 10000, "B 级", TRUE(), "C 级")
拆解
IFS是一串"如果...就..."的链式写法- 第一个条件
[金额] > 100000命中 → 返回 "A 级" - 不命中 → 看第二个
[金额] > 10000 - 都不中 →
TRUE()永远为真 → "C 级"
为什么用 IFS 而不是 IF 嵌套?
如果用 IF 嵌套写同样的逻辑:
IF([金额] > 100000, "A 级", IF([金额] > 10000, "B 级", "C 级"))
功能一样,但 IFS 更容易读。用 IFS。
延伸:按状态 + 金额分等级
IFS(
AND([状态] == "已签约", [金额] > 50000), "VIP",
AND([状态] == "已签约", [金额] > 10000), "标准",
[状态] == "洽谈中", "跟进",
TRUE(), "其他"
)
案例二:计算距离截止日还有几天
DATETIME_DIFF([截止日], TODAY(), "d")
- 正数 = 还有 N 天
- 0 = 今天
- 负数 = 超期了
加状态标签
IF(
DATETIME_DIFF([截止日], TODAY(), "d") < 0,
"🔴 已超期",
IF(
DATETIME_DIFF([截止日], TODAY(), "d") <= 3,
"🟡 即将到期",
"🟢 正常"
)
)
这个公式可以当看板折叠标识——一眼看出哪些任务紧急。
案例三:拼一个"二维码内容"
把多个字段拼成一条:
CONCAT("姓名: ", [姓名], "\n公司: ", [公司], "\n职位: ", [职位])
这种公式常配合第三方二维码生成,生成员工吊牌/活动签到码。
案例四:算提成(带阶梯)
IFS(
[金额] > 500000, [金额] * 0.15,
[金额] > 100000, [金额] * 0.10,
[金额] > 10000, [金额] * 0.05,
TRUE(), 0
)
案例五:去重统计「本月新客户数」
用 COUNTIF + 日期比对:
COUNTIF(字段, 条件)
前提是有一个"创建日期"字段(系统字段),然后:
COUNTIF([创建时间], ">= 2026-06-01")
实际多维表格的
COUNTIF对日期支持较有限,复杂统计建议用仪表盘或汇总字段。
案例六:生成任务编号
用流水号 + 前缀生成唯一编号:
"TASK-" & TEXT([序号], "0000")
如果你的表有一个自增的"编号"字段(比如 1, 2, 3...),可以格式化成 TASK-0001、TASK-0002。
EXERCISE
公式实战
- Q.01
有一个'订单'表,字段有[数量]和[单价],想自动算出总价,公式应该是?
- Q.02
想根据分数自动判定等级:90以上为A,60以上为B,其他为C,公式怎么写?
- Q.03
想统计'状态'字段为'已完成'的记录数量,应该用什么公式?
EXERCISE
第五章:公式
- Q.01
以下哪个公式能正确计算折扣价?(原价字段名:[原价],折扣字段名:[折扣],折扣是0-1的小数)
- Q.02
想把'张三'和'销售部'拼接成'张三-销售部',公式怎么写?
- Q.03
IF 函数的语法是什么?
- Q.04
SUMIF 函数的作用是什么?
- Q.05
公式 [日期A] - [日期B] 的结果是什么?
- Q.06
公式中引用了一个空的数字字段,会发生什么?
- Q.07
想用公式判断[年龄]是否在18到60之间,怎么写?
- Q.08
以下哪个函数可以计算有多少条记录满足特定条件?
下一章:关联与汇总