首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >基于其他列中的值在Excel中编写条件删除重复项语句

基于其他列中的值在Excel中编写条件删除重复项语句
EN

Stack Overflow用户
提问于 2021-07-08 21:22:03
回答 1查看 67关注 0票数 0

我正在尝试根据其他列中的值删除/压缩列中的重复行。我尝试做的是让Excel在A列中发现重复项,然后在这组重复项中,删除B和C列中不包含特定值(x)的项,并将B和C列中的冗余值压缩到一行中。但是,如果在B或C列中的一组重复项中没有包含值(x)的记录,则删除除一条之外的所有记录(参见列A中的第16/17行)。

编辑:附件是原始数据的示例(左表),以及我试图通过语句实现的结果(右表)。

感谢您对如何编写可执行此任务的语句的任何帮助。

EN

回答 1

Stack Overflow用户

发布于 2021-07-10 01:28:08

我会使用PowerQuery来实现这一点。

方法

  1. 选择A1:B19,转到功能区中的Data选项卡,然后选择From /range以打开PowerQuery编辑器并将所选区域加载到查询中。将其重命名为"Load_Data".

  1. 创建以下附加查询:

Unique_ColumnA

代码语言:javascript
运行
复制
let
    Source = Load_Data,
    KeepColumnA = Table.SelectColumns(Source ,{"Column A"}),
    RemoveDuplicates = Table.Distinct(KeepColumnA)
in
    RemoveDuplicates

Content_ColumnB_C

代码语言:javascript
运行
复制
let
    Source = Load_Data,
    CheckIfEmpty = Table.AddColumn(Source, "IsEmpty", each if ([Column B] <> null) and ([Column C] <> null) then false else true),
    FilterForNonEmpty = Table.SelectRows(CheckIfEmpty, each ([IsEmpty] = false))
in
    FilterForNonEmpty

结果

代码语言:javascript
运行
复制
let
    Source = Table.NestedJoin(Unique_ColumnA, {"Column A"}, Content_ColumnB_C, {"Column A"}, "Content_ColumnB_C", JoinKind.LeftOuter),
    Show_ColumnBC = Table.ExpandTableColumn(Source, "Content_ColumnB_C", {"Column B", "Column C"}, {"Column B", "Column C"})
in
    Show_ColumnBC
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68302474

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档