Wps formula
42个WPS办公技能,一键安装全搞定。写公文、做报表、排论文、做PPT、算工资、生成合同....覆盖你80%的日常办公场景,让WPS变成你的智能助手。
npx -y skills add Bwkyd/wps-skills --skill wps-formulaAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 5 stars5 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
表格公式助手。描述你的计算需求,帮你写出对应的WPS表格公式, VLOOKUP、SUMIF、IF嵌套都支持,还说明WPS和Excel的兼容差异。 用于帮助用户生成WPS表格公式。当用户提到公式、函数、怎么算时触发。 WPS spreadsheet formula assistant.
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
7.2 KB, as published. Nobody here has run it
WPS 公式专家
用中文描述你想算什么 → 自动生成 WPS 表格公式。
核心原则:生成的公式必须在 WPS 表格中可直接使用。注意 WPS 与 Excel 的函数差异。
When to Use
- 用户不知道该用什么函数
- 用户需要复杂的嵌套公式
- 用户遇到公式错误(#VALUE!, #REF!, #N/A等)
- 用户需要从自然语言描述转换为公式
- 用户问"怎么用公式实现XXX"
When NOT to Use
- 用户需要编写WPS宏脚本 → 使用
wps-jsa-macro - 用户需要数据清洗(去重/去空)→ 使用
wps-data-clean - 用户需要创建数据透视表 → 使用
wps-pivot
工作流程
Step 1: 理解需求
确认:
- 数据位置:数据在哪些单元格/列?(如"A列是姓名,B列是销售额")
- 计算目标:想得到什么结果?
- 特殊条件:是否有筛选条件、多条件、跨表引用?
Step 2: 生成公式
输出格式必须包含:
📌 公式:
=YOUR_FORMULA_HERE
📝 说明:
- 逐段解释公式的每个部分
- 指出关键函数的作用
📋 使用方法:
- 在哪个单元格输入
- 是否需要下拉填充
- 注意事项
⚠️ 注意:
- WPS兼容性提醒(如有)
- 常见陷阱
Step 3: 公式调试(如遇到错误)
用户反馈错误时,按此流程排查:
#VALUE! → 数据类型不匹配(文本vs数字),检查是否有空格或隐藏字符
#REF! → 引用的单元格被删除或超出范围
#N/A → 查找函数未找到匹配值,检查查找值是否完全一致
#NAME? → 函数名拼写错误或WPS不支持该函数
#DIV/0! → 除数为零,用IFERROR包裹
#NUM! → 数值参数无效
循环引用 → 公式直接或间接引用了自身所在单元格
WPS 函数速查(按场景分类)
查找匹配(最高频!)
| 场景 | 推荐公式 | 示例 |
|---|---|---|
| 精确查找 | VLOOKUP | =VLOOKUP(A2,Sheet2!A:C,3,0) |
| 左向查找 | INDEX+MATCH | =INDEX(A:A,MATCH(D2,C:C,0)) |
| 多条件查找 | INDEX+MATCH嵌套 | =INDEX(D:D,MATCH(1,(A:A=F2)*(B:B=G2),0)) ⚠️需Ctrl+Shift+Enter |
| 模糊匹配 | VLOOKUP通配符 | =VLOOKUP("*"&A2&"*",B:C,2,0) |
| 存在性检查 | COUNTIF | =IF(COUNTIF(B:B,A2)>0,"有","无") |
条件统计
| 场景 | 推荐公式 | 示例 |
|---|---|---|
| 单条件求和 | SUMIF | =SUMIF(A:A,"销售部",B:B) |
| 多条件求和 | SUMIFS | =SUMIFS(C:C,A:A,"销售部",B:B,">1000") |
| 单条件计数 | COUNTIF | =COUNTIF(A:A,"合格") |
| 多条件计数 | COUNTIFS | =COUNTIFS(A:A,"男",B:B,">=90") |
| 条件平均 | AVERAGEIF | =AVERAGEIF(A:A,"A班",B:B) |
| 条件最大 | MAXIFS | =MAXIFS(B:B,A:A,"销售部") ⚠️WPS2019+ |
文本处理
| 场景 | 推荐公式 | 示例 |
|---|---|---|
| 提取前N字符 | LEFT | =LEFT(A2,3) |
| 提取后N字符 | RIGHT | =RIGHT(A2,4) |
| 提取中间 | MID | =MID(A2,4,8) 从第4位取8个字符 |
| 查找位置 | FIND/SEARCH | =FIND("@",A2) FIND区分大小写 |
| 替换 | SUBSTITUTE | =SUBSTITUTE(A2," ","") 去空格 |
| 合并文本 | CONCATENATE/& | =A2&"-"&B2 |
| 文本转数字 | VALUE | =VALUE(A2) |
| 数字转文本 | TEXT | =TEXT(A2,"0.00") |
| 去首尾空格 | TRIM | =TRIM(A2) |
| 提取中文 | 正则不支持 | 用VBA/JSA替代 |
日期时间
| 场景 | 推荐公式 | 示例 |
|---|---|---|
| 今天日期 | TODAY | =TODAY() |
| 两日期间隔 | 直接相减 | =B2-A2 结果为天数 |
| 计算年龄 | DATEDIF | =DATEDIF(A2,TODAY(),"Y") |
| 提取年/月/日 | YEAR/MONTH/DAY | =YEAR(A2) |
| 工作日计算 | NETWORKDAYS | =NETWORKDAYS(A2,B2) |
| 月末日期 | EOMONTH | =EOMONTH(A2,0) 当月末 |
| 日期格式化 | TEXT | =TEXT(A2,"YYYY年M月D日") |
逻辑判断
| 场景 | 推荐公式 | 示例 |
|---|---|---|
| 单条件判断 | IF | =IF(A2>=60,"及格","不及格") |
| 多层判断 | IFS或嵌套IF | =IFS(A2>=90,"优",A2>=60,"及格",TRUE,"不及格") |
| 错误处理 | IFERROR | =IFERROR(VLOOKUP(...),"未找到") |
| 多条件与 | AND | =IF(AND(A2>0,B2>0),"有效","无效") |
| 多条件或 | OR | =IF(OR(A2="经理",A2="总监"),"管理层","普通") |
数组公式(Ctrl+Shift+Enter)
⚠️ WPS中数组公式需要按 Ctrl+Shift+Enter 确认,公式两端会显示{}
常用数组公式:
- 多条件查找:=INDEX(D:D,MATCH(1,(A:A=F2)*(B:B=G2),0))
- 条件去重计数:=SUMPRODUCT(1/COUNTIF(A2:A100,A2:A100))
- 多列求和:=SUMPRODUCT((A2:A100="条件")*B2:B100*C2:C100)
WPS 与 Excel 函数差异
| 函数 | Excel | WPS | 说明 |
|---|---|---|---|
XLOOKUP | Excel 365+ | WPS 2021+ | 旧版WPS不支持,用INDEX+MATCH替代 |
MAXIFS/MINIFS | Excel 2019+ | WPS 2019+ | 旧版用MAX(IF())数组公式替代 |
IFS | Excel 2019+ | WPS 2019+ | 旧版用嵌套IF替代 |
CONCAT | Excel 2019+ | WPS 2019+ | 旧版用CONCATENATE |
TEXTJOIN | Excel 2019+ | WPS 2019+ | 旧版无直接替代 |
UNIQUE | Excel 365 | 部分WPS支持 | 建议用高级筛选或JSA宏替代 |
FILTER | Excel 365 | 部分WPS支持 | 建议用高级筛选替代 |
SORT | Excel 365 | 部分WPS支持 | 建议用排序功能替代 |
LET | Excel 365 | 不支持 | 无法使用 |
LAMBDA | Excel 365 | 不支持 | 无法使用 |
安全策略: 默认使用兼容性最好的函数(VLOOKUP而非XLOOKUP),除非用户明确使用新版WPS。
金额大小写转换公式
这是中国财务场景的超高频需求:
=IF(A1<0,"负","")&IF(INT(A1)=0,"零",
TEXT(INT(ABS(A1)),"[DBNum2]")&"元")&
IF(INT(ABS(A1)*10)-INT(ABS(A1))*10=0,
IF(INT(ABS(A1)*100)-INT(ABS(A1)*10)*10=0,"整","零"),
MID("壹贰叁肆伍陆柒捌玖",INT(ABS(A1)*10)-INT(ABS(A1))*10,1)&"角")&
IF(INT(ABS(A1)*100)-INT(ABS(A1)*10)*10=0,"",
MID("壹贰叁肆伍陆柒捌玖",INT(ABS(A1)*100)-INT(ABS(A1)*10)*10,1)&"分")
示例
# 自然语言→公式
/wps-formula 我想统计A列中"销售部"对应的B列金额总和
# 复杂需求
/wps-formula A列是姓名B列是部门C列是销售额,帮我找出每个部门销售额最高的人
# 错误修复
/wps-formula 我的VLOOKUP返回#N/A,查找值在A列,数据在Sheet2的A到D列
参考
函数详细分类见 reference/formula-categories.md。 中文排版通用规范见 ../shared/chinese-typesetting.md。