背景:
当你面对一个产品多个货期的时候,领导让你快速汇报每个品的byday出货数量,你是不是苦于excel函数不精,不会写复杂函数,下面教你一招,摇身一变成为函数小达人!
给你一个直接可用的示例:
假设:
- 日期列:从 AG 列开始,列标题是 3/17、 3/18等
- 对应数量在 AG2 、 AH2 等单元格
- 标红列在 AN2

针对以上场景可写出该公式,快速解决你的困扰:
=TEXTJOIN(",",TRUE,IF(AG2:AZ2>0,TEXT(AG$1:AZ$1,"m.d")&"交"&AG2:AZ2,""))
输入后按 Ctrl+Shift+Enter ,新版直接回车即可。



公式逻辑拆解:
1. IF(AA2:AZ2>0, ... , "") :只保留数量>0的行,空数量自动忽略
2. TEXT(AA$1:AZ$1,"m.d") :把列标题的日期(如3/12)格式化为 3.12
3. &"交"&AA2:AZ2 :拼接成 3.12交1000 格式
4. TEXTJOIN(",",TRUE, ...) :用中文逗号 , 把所有符合条件的内容拼接起来。
如此“复杂”的函数,你看懂了吗?欢迎大家分享自己的学习经验,共同努力进步~