vba - 删除两列 VBA 之间的重复项
问题描述
我正在从站点中提取一些数据,将其放在 J 列中,将其与 K 列中的另一列数据进行比较,然后删除在 J 列的两列之间发现的任何重复项。
现在我正在使用它,但它似乎不起作用。有关如何使其正常工作的任何想法?
Sub Remove_Duplicates()
'Create Range for SAP Batches
Dim rng1 As Range
Dim rng2 As Range
'Finds last cell in column J
Set rng2 = .Range("K2").End(xlDown)
ActiveSheet.Range("J2:rng2").RemoveDuplicates Columns:=Array(1, 2), Header:=xlNo
End Sub
解决方案
这使用FIND()
方法,从底部向上删除:
Sub KillDuplicated()
Dim J As Range, K As Range
Dim rc As Long
rc = Rows.Count
Set J = Range("J1:J" & Cells(rc, "J").End(xlUp).Row)
Set K = Range("K1:K" & Cells(rc, "K").End(xlUp).Row)
jcnt = J.Count
For i = jcnt To 1 Step -1
If K.Find(what:=Cells(i, "J"), after:=K(1)) Is Nothing Then
Else
Cells(i, "J").Delete shift:=xlUp
End If
Next i
End Sub
前:
之后:
推荐阅读
- java - Jooq 原生查询不使用连接信息
- r - R中固定间隔的滚动平均值
- angular - 无法从 JSON 文件中读取数据
- three.js - 使用threejs渲染多个相交透明网格时的伪影
- smartcontracts - 如何在 Plutus 智能合约中分配不均等的金额
- react-native - 是否仍然可以为 facebook 使用 oAuth 网络登录?
- json - 使用参数从 Wix 调用 PowerShell 脚本
- reactjs - Redux 工具包操作不知何故不同步
- php - Facebook Conversions API - AuthorizationException(无效参数)
- python - import_public_link() 中的 file_key 参数是什么?