ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

EH搜索     
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
Excel不给力? 何不试试FoxTable! Excel 2016函数公式学习大典 Office知识技巧免费学 打造核心竞争力的职场宝典
300集Office 2010微视频教程 Tableau-数据可视化工具 精品推荐-800套精选PPT模板,点击获取 ExcelHome出品 - VBA代码宝免费下载
你的Excel 2010实战技巧学习锦囊 欲罢不能, 过目难忘的 Office 新界面 Excel VBA经典代码实践指南
查看: 121|回复: 5

[求助] 如何通过PQ有条件得删除重复值

[复制链接]

TA的精华主题

TA的得分主题

发表于 2020-2-13 13:52 | 显示全部楼层 |阅读模式
当同一个产品料号有多个价格时,是否可以通过PQ的降序或升序,通过删除重复值,保留价格的最大值或最小值呢?

如图所示,无论是降序还是升序,PQ处理后的结果都是一样的。对于PQ删除重复值得逻辑,有些令人费解,到底删除的是头部重复记录还是尾部重复记录呢?

还请版主和大神不吝赐教。

谢谢。
EH_如何通过PQ有条件删除重复值.png

EH_如何通过PQ有条件删除重复值.zip

49.85 KB, 下载次数: 1

TA的精华主题

TA的得分主题

发表于 2020-2-13 14:22 | 显示全部楼层
界面操作排序后状态不稳定,可以用Table.Buffer稳固一下,比如 Table.Buffer(排序的行)
或者写排序函数的时候,里边更改写法,不要用界面操作,Table.Sort(tbl,{each [field1],each [field2]})

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-2-13 15:10 | 显示全部楼层
飞天篮球猪 发表于 2020-2-13 14:22
界面操作排序后状态不稳定,可以用Table.Buffer稳固一下,比如 Table.Buffer(排序的行)
或者写排序函数的 ...

感谢大神指点。

如下所示,增加了“固定”代码,但不知如果处理上万行的记录时,是否依然有效。

let
    源 = Excel.CurrentWorkbook(){[Name="表1"]}[Content],
    更改的类型 = Table.TransformColumnTypes(源,{{"ItemNo", type text}, {"Price", type number}}),
    排序的行 = Table.Sort(更改的类型,{{"ItemNo", Order.Ascending}, {"Price", Order.Descending}}),
    固定 = Table.Buffer( 排序的行),
    删除的副本 = Table.Distinct(固定, {"ItemNo"})
in
    删除的副本

TA的精华主题

TA的得分主题

发表于 2020-2-13 15:16 | 显示全部楼层
这样也可以,就不用buffer了
排序的行 = Table.Sort(更改的类型,{"ItemNo",each -[Price]})
或者还有其他的方法,具体的解法得看你的需求。

TA的精华主题

TA的得分主题

 楼主| 发表于 2020-2-13 15:26 | 显示全部楼层
飞天篮球猪 发表于 2020-2-13 15:16
这样也可以,就不用buffer了
排序的行 = Table.Sort(更改的类型,{"ItemNo",each -})
或者还有其他的方法 ...

感谢, each [Price] 是升序排列,each -[Price] 是降序排列。

但个中原理,还不太理解。

TA的精华主题

TA的得分主题

发表于 2020-2-13 18:36 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关注官方微信,高效办公专列,每天发车

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

GMT+8, 2020-4-6 01:27 , Processed in 0.074864 second(s), 14 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2020 Wooffice Inc.

   

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

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

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