excel 对其中的二列中文本(或数字等)完全相同的行进行筛选

excel

1个回答

写回答

jjydd

2025-12-21 14:18

+ 关注

VBA
VBA

1、在F2输入公式:=SUMPRODUCT((A:A&B:B=A2&B2)*1)向下填充,筛选大于1的即可。 2、在F2输入公式:F2=SUMPRODUCT(($A$2:$A$14&$B$2:$B$14=A2&B2)*1)1再用高级筛选,条件为$F1:$F2,筛选结果复制到其他位置。3、VBA代码:Option Explicit

Sub test()Dim d, arr, i&, t, x As Range, j&, c As Long, brr, nmApplication.ScreenUpdating = False[g1].CurrentRegion.Offset(1).Clear

Set d = CreateObject(scripting.dictionary)arr = [a1].CurrentRegion.Value

For i = 2 To UBound(arr) d(arr(i, 1) & | & arr(i, 2)) = Next

t = d.keysFor i = 0 To UBound(t) [a1].CurrentRegion.AutoFilter nm = [g65536].End(3).Row + 1 [a1].CurrentRegion.AutoFilter Field:=1, Criteria1:=Split(t(i), |)(0) [a1].CurrentRegion.AutoFilter Field:=2, Criteria1:=Split(t(i), |)(1) Set x = ActiveSheet.AutoFilter.Range.SpecialCells(xlCellTypeVisible) For j = 1 To x.Areas.Count c = c + x.Areas(j).Rows.Count Next If c 2 Then: [a1].CurrentRegion.Copy Cells(nm, 7): [a1].CurrentRegion.AutoFilter: Range(Cells(nm, 7), Cells(nm, 11)).Delete Shift:=xlUp c = 0 [a1].CurrentRegion.AutoFilterNextApplication.ScreenUpdating = TrueEnd Sub还有SQL等都可以,如没有解决,可Hi我。

举报有用(0分享收藏

Copyright © 2025 IZhiDa.com All Rights Reserved.

知答 版权所有 粤ICP备2023042255号