分组汇总后再根据数量拼上不同文字

Excel某表格有2列。

|---|------------|---|
| | A | B |
| 1 | Apples | 3 |
| 2 | Apples | 0 |
| 3 | Bananas | 1 |
| 4 | Bananas | 6 |
| 5 | Cantaloupe | 0 |
| 6 | Kiwis | 2 |
| 7 | Kiwis | 2 |
| 8 | Kiwis | 1 |

要求:按第1列分组,如果组内第2列大于0则对当前行进行计数,否则不计数;计数结果等于1则附加Occurrence,否则附加 Occurrence 的复数形式。

|---|------------|---------------|
| | A | B |
| 1 | Apples | 1 Occurrence |
| 2 | Bananas | 2 Occurrences |
| 3 | Cantaloupe | 0 Occurrences |
| 4 | Kiwis | 3 Occurrences |

使用 SPL XLL

复制代码
=spl("=E@b(?.group(~1;t=~.count(~2>0) / if(t==1,""Occurrence"",""Occurrences"")))",A1:B8)

函数 group 分组并计算每组数据,E@b 去掉列头,~1 表示序列的当前成员的第 1 个子成员。

相关推荐
桀人34 分钟前
C++——模板初阶(收录在专栏C++入门到精通)
开发语言·c++
一直有一个ac的梦想41 分钟前
cmu15445 2025fall lec 18 transactions with two-phase lock
java·开发语言·数据库
JAVA社区1 小时前
Java进阶全套教程(四)—— SpringMVC框架详解
java·开发语言·spring·面试·职场和发展
Lumbrologist1 小时前
【C++】零基础入门 · 第 2 节:变量、基本数据类型与输入输出
java·开发语言·c++
码完就睡1 小时前
C语言——动态内存
c语言·开发语言
xyq20242 小时前
Java 数组
开发语言
雨辰AI2 小时前
人大金仓 V9 生产级专用监控大盘(含 120 + 指标 + 告警规则 + 一键导入)
java·开发语言·数据库·mysql·政务
时寒的笔记2 小时前
day13~14核心案例某采招网
开发语言·javascript·ecmascript
彦为君2 小时前
Java文件处理效率库Commons-IO(速览)
java·开发语言·mfc
sycmancia3 小时前
Qt——文本打印与光标定位
开发语言·qt