Excel 如何过滤一列中的数据,然后在链接到已过滤数据的另一列中获取值
我有一个+-15000行的数据库。在U列中,我需要筛选模型代码。在H列中,我有一个唯一资产编号的列表。多个模型,每个模型具有唯一的资产编号。因此,对于每个过滤后的模型代码,我需要H列中的一个唯一资产编号,然后将其复制并粘贴到A列中。2我可以使用下面的代码进行过滤,但如何获得H列中的一个唯一值Excel 如何过滤一列中的数据,然后在链接到已过滤数据的另一列中获取值,excel,vba,Excel,Vba,我有一个+-15000行的数据库。在U列中,我需要筛选模型代码。在H列中,我有一个唯一资产编号的列表。多个模型,每个模型具有唯一的资产编号。因此,对于每个过滤后的模型代码,我需要H列中的一个唯一资产编号,然后将其复制并粘贴到A列中。2我可以使用下面的代码进行过滤,但如何获得H列中的一个唯一值 Sub SumGroups() Dim lastCode As Long, lastFiltCode As Long 'Determine Last Row in Column U (Un
Sub SumGroups()
Dim lastCode As Long, lastFiltCode As Long
'Determine Last Row in Column U (Unfiltered Codes)
With Worksheets("Database") lastCode = .Range("U" & .Rows.Count).(xlUp).Row
'Filter Unique Codes into Column A Sheet2
.Range("U2:U" & lastCode).AdvancedFilter Action:=xlFilterCopy, _
CopyToRange:=Worksheets("Sheet2").Range("A1"), Unique:=True
End With
End Sub
尽管我想说最简单的方法是使用透视表,但如果您需要使用VBA的解决方案,下面是代码的解决方案 将数据复制到Sheet2后,可以使用RemovedUpplicates函数仅保留唯一值,如下所示 我还没有检查这是否有效,但从我所能看到的来看,它应该有效
Dim lastCode As Long, lastFiltCode As Long
'Determine Last Row in Column U (Unfiltered Codes)
With Worksheets("Database") lastCode = .Range("U" & .Rows.Count).(xlUp).Row
'Filter Unique Codes into Column A Sheet2
.Range("U2:U" & lastCode).AdvancedFilter Action:=xlFilterCopy, _
CopyToRange:=Worksheets("Sheet2").Range("A1"), Unique:=True
End With
'Use Header:=xlNo below is Sheet2 doesn't have header
Worksheets("Sheet2").Range("A1:A100").RemoveDuplicates Columns:=Array(1), Header:=xlYes
End Sub
请将上面的范围A1:A100更改为您在表2中的相应范围。谢谢您删除重复项的想法非常好。但是我没有使用你的代码。