我在 Excel 中有以下类型的表格:
A | A1
B | B1
A | A3
A | A4
B | B3
我需要创建一个新表,其中的数据如下所示:
A | A1, A3, A4
B | B1, B3
除了手动之外,还有其他公式或方法可以做到这一点吗?
编辑#1:
基本上我想做的事情在这里描述http://www.extendoffice.com/documents/excel/802-excel-select-cells-based-on-criteria.html但我遇到的问题是如何将数据放入与您搜索的条件相关的新单元格中(我们的示例中包含“A”和“B”的所有代码)。
答案1
这就是你想要的。如果你需要知道如何运行宏,请参阅如何在 MS Office 中添加 VBA?
Sub doThis()
Dim row As Integer
row = 1
Range("E:E").Cells.Clear
Range("F:F").Cells.Clear
Do While (Range("A" & row).Value <> "")
Dim currentA As String
currentA = Range("A" & row).Value
'check if the A col values exist in the E col
Dim row2 As Integer
row2 = 1
Dim doesExist As Boolean
doesExist = False
Do While (Range("E" & row2).Value <> "")
If (Range("E" & row2).Value = currentA) Then
Range("F" & row2).Value = Range("F" & row2).Value & ", " & Range("B" & row).Value
doesExist = True
Exit Do
End If
row2 = row2 + 1
Loop
If Not doesExist Then
Range("E" & row2).Value = Range("A" & row).Value
Range("F" & row2).Value = Range("B" & row).Value
End If
row = row + 1
Loop
End Sub
前
运行宏后
正如您所见,它不仅仅寻找 A 和 B,因此希望它不会限制您的需求。