ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 1571|回复: 19

[求助] 如何将表2符合各项要求的商品及数据直接提取到表1(个人感觉操作难度很高)

[复制链接]

TA的精华主题

TA的得分主题

发表于 2023-4-15 20:53 | 显示全部楼层 |阅读模式
本帖最后由 拼好亮 于 2023-4-15 21:20 编辑

各位老师,表里的表2是从系统下载下来的数据,需要根据各项要求将符合要求的商品数据直接提取到表1对应列,所以表1的每一列都需要设置公式。

如果是用传统方式,需要在表2里根据要求不断的筛选,最后将符合要求的商品数据粘贴至表1,这样很麻烦,所以想请教老师们有没有公式直接生成。

需求文件1.xlsx.zip

15.39 KB, 下载次数: 27

表2是从系统下载下来的数据,需要根据各项要求将符合要求的商品数据直接提取到表1对应列

TA的精华主题

TA的得分主题

发表于 2023-4-16 09:50 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
你得问题你得版本一条公式做不出来,要么加辅助列要么VBA或者jsa解决,想要一步到位那就去VBA或者jsa版块问。

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-4-16 12:41 来自手机 | 显示全部楼层
高个子 发表于 2023-4-16 09:50
你得问题你得版本一条公式做不出来,要么加辅助列要么VBA或者jsa解决,想要一步到位那就去VBA或者jsa版块问 ...

感谢老师指点,我想请教如果是加辅助列的话需要怎么操作?我也清楚VBA肯定可以,奈何是个小白,做成vba ,我就没办法理解和学习了。

TA的精华主题

TA的得分主题

发表于 2023-4-16 13:31 | 显示全部楼层
本帖最后由 橒♂蝣 于 2023-4-16 13:34 编辑

辅助列B4=LET(条件1,FILTER(表2!A:L,(表2!L:L=表2!$L$35)*(表2!E:E=表2!$E$2)*(表2!F:F=表2!$F$3)*(表2!I:I>=5)*(表2!I:I<=12.9)),
前端,INDEX(条件1,,11),
前端提取1,FREQUENCY(XMATCH(前端,前端),SEQUENCE(ROWS(前端)-1)),
前端提取,LARGE(前端提取1,SEQUENCE(2)),
前端提取行列,FILTER(SEQUENCE(ROWS(前端)),ISNUMBER(XMATCH(前端提取1,前端提取))),
前端名称,INDEX(前端,前端提取行列),
FILTER(条件1,ISNUMBER(XMATCH(前端,前端名称))))

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-4-16 14:57 | 显示全部楼层
橒♂蝣 发表于 2023-4-16 13:31
辅助列B4=LET(条件1,FILTER(表2!A:L,(表2!L:L=表2!$L$35)*(表2!E:E=表2!$E$2)*(表2!F:F=表2!$F$3)*(表2!I:I ...

想请教一下LET是LEFT吗?

TA的精华主题

TA的得分主题

发表于 2023-4-16 15:05 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
拼好亮 发表于 2023-4-16 14:57
想请教一下LET是LEFT吗?

let是一个单独的函数,21版的有

TA的精华主题

TA的得分主题

发表于 2023-4-16 15:18 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2023-4-16 15:58 来自手机 | 显示全部楼层
高个子 发表于 2023-4-16 15:18
这样的结果真的对吗?

都说了,这是一个辅助列,你下面的要求公式不好实现,需要递归

TA的精华主题

TA的得分主题

发表于 2023-4-16 16:23 | 显示全部楼层
橒♂蝣 发表于 2023-4-16 15:58
都说了,这是一个辅助列,你下面的要求公式不好实现,需要递归

再加辅助列还是做不出来?这玩意能加辅助列就不断加,直到做出来为止

TA的精华主题

TA的得分主题

发表于 2023-4-16 23:37 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 橒♂蝣 于 2023-4-30 07:51 编辑

想了一个新思路:B4=LET(求和列,FILTER(SUMIFS(表2!G2:G53,表2!K2:K53,表2!K2:K53,表2!E2:E53,表2!$E$2,表2!F2:F53,表2!$F$3,表2!I2:I53,">=5",表2!I2:I53,"<=12.9",表2!L2:L53,表2!L2:L53),(表2!L2:L53=表2!$L$35)*(表2!E2:E53=表2!$E$2)*(表2!F2:F53=表2!$F$3)*(表2!I2:I53>=5)*(表2!I2:I53<=12.9)),
计数列,FILTER(COUNTIFS(表2!L2:L53,表2!L2:L53,表2!K2:K53,表2!K2:K53,表2!E2:E53,表2!$E$2,表2!F2:F53,表2!$F$3,表2!I2:I53,">=5",表2!I2:I53,"<=12.9"),(表2!L2:L53=表2!$L$35)*(表2!E2:E53=表2!$E$2)*(表2!F2:F53=表2!$F$3)*(表2!I2:I53>=5)*(表2!I2:I53<=12.9)),
原始,FILTER(表2!A2:L53,(表2!L2:L53=表2!$L$35)*(表2!E2:E53=表2!$E$2)*(表2!F2:F53=表2!$F$3)*(表2!I2:I53>=5)*(表2!I2:I53<=12.9)),
条件1,SORTBY(原始,计数列,-1,求和列,-1,INDEX(原始,,7),-1),
前端1,FILTER(条件1,INDEX(条件1,,11)=INDEX(UNIQUE(INDEX(条件1,,11)),1)),
前端2,FILTER(条件1,INDEX(条件1,,11)=INDEX(UNIQUE(INDEX(条件1,,11)),2)),
商家位置1,SMALL(UNIQUE(XMATCH(INDEX(前端1,,4),INDEX(前端1,,4))),SEQUENCE(2)),
日1,INDEX(INDEX(前端1,,7),商家位置1),
商家位置2,SMALL(UNIQUE(XMATCH(INDEX(前端2,,4),INDEX(前端2,,4))),SEQUENCE(2)),
日2,INDEX(INDEX(前端2,,7),商家位置2),
FILTER(条件1,ISNUMBER(XMATCH(INDEX(条件1,,7),日1))+ISNUMBER(XMATCH(INDEX(条件1,,7),日2))))
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-17 11:39 , Processed in 0.046730 second(s), 15 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表