【发布时间】:2019-03-28 06:04:54
【问题描述】:
我正在使用客户信息列表搜索重复项,然后将整行粘贴到不同的工作表中。我当前的代码会找到重复项并粘贴它们,但它不会粘贴用于搜索条件的行。
当我运行我的代码时,它会将第 3 行复制到不同的页面,但是我需要它也复制第 1 行,以便能够看到同一“电话”下列出的所有“姓名”,而不仅仅是重复的。
这是我当前的代码:
Option Explicit
Dim output As Worksheet
Dim data As Worksheet
Dim hold As Object
Dim celli
Dim nextRow
Sub main()
Set output = Worksheets("phoneFlags")
Set data = Worksheets("filteredData")
Set hold = CreateObject("Scripting.Dictionary")
For Each celli In data.Columns(3).Cells
If Not hold.Exists(CStr(celli.Value)) Then
If Not IsEmpty(celli.Value) Then
hold.Add Key:="" & celli.Value, Item:=celli.Row
End If
ElseIf hold.Exists(CStr(celli.Value)) Then
'Copies row to sheet
data.Rows(celli.Row).Copy (output.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0))
End If
Next celli
End Sub
我尝试创建第二个For Each 循环,但返回的结果相同。
ElseIf hold.Exists(CStr(celli.Value)) Then
match = celli.Value
For Each match In data.Columns(3).Cells
data.Rows(celli.Row).Copy (output.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0))
Next match
End If
【问题讨论】:
标签: excel vba duplicates