如果两个连续列相等并且相邻列有变化,请找到这些条目

问题描述 投票:0回答:1

对于 Excel,我想将列中的所有连续单元格与相邻列中的值进行比较。如果具有相同值的相同连续单元格存在变化,我想将整行复制到名为“编码错误”的新选项卡

Sample

因此,在示例图像中,您可以看到有一些重复的条目哈希值标头,并且在具有标头“编码”的相邻单元格中存在哈希值的编码值。

3DBF1 没有重复项,所以一切都很好,我不想要这个 EB7275 是重复的,但编码也相同,我不想要这个 31F15 是重复的,并且编码不同,所以我希望这两个条目连同标题一起复制到一个新选项卡,说“编码问题” A21D131 有 3 个重复项,其中两个具有相同的编码,但其中一个不同,因此与上面相同,因此我希望将这两个条目连同标头复制到一个新选项卡,位于 31F15 哈希值条目下方。

这个哈希值可能有数千个,所以这变得非常难以识别并手动执行此操作,我们可以有一个 VBA 来完成此任务吗:)

我没有尝试过VBA新功能

excel vba duplicates
1个回答
0
投票

使用表/范围 [x] 标头中的数据将数据导入 powerquery

将此代码粘贴到主页...高级编辑器...

let Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
#"Removed Duplicates" = Table.Distinct(Source),
#"Grouped Rows" = Table.Group(#"Removed Duplicates", {"Hash Value"}, {{"Count", each Table.RowCount(_), Int64.Type}, {"data", each _, type table [Hash Value=text, Coding=text]}}),
#"Filtered Rows" = Table.SelectRows(#"Grouped Rows", each ([Count] = 2)),
#"Removed Columns" = Table.RemoveColumns(#"Filtered Rows",{"Hash Value", "Count"}),
#"Expanded data" = Table.ExpandTableColumn(#"Removed Columns", "data", {"Hash Value", "Coding"}, {"Hash Value", "Coding"})
in #"Expanded data"

关闭文件并将其作为表格加载回 Excel。然后您可以右键刷新它或使用VBA刷新

© www.soinside.com 2019 - 2024. All rights reserved.