Excel 识别和组合多个单元
我正在尝试编写一个宏,它将选择一列中所有相同的值,跨两列移动,然后将这些单元格中的所有数据合并为一个。然后我需要它重复,直到一切都结合起来Excel 识别和组合多个单元,excel,excel-2010,vba,Excel,Excel 2010,Vba,我正在尝试编写一个宏,它将选择一列中所有相同的值,跨两列移动,然后将这些单元格中的所有数据合并为一个。然后我需要它重复,直到一切都结合起来 1 122 1 121 2 351 3 351 3 352 4 176 9.1 350 10 351 10 352 如果这是我们的原始数据,我需要选择第一列中1的所有值,将我的选择偏移两列,然后将这些单元格合并为一列。然后,我需要在A列上运行复制函数,以删除所有备用单元格,并给出一个直接列表。
1 122
1 121
2 351
3 351
3 352
4 176
9.1 350
10 351
10 352
如果这是我们的原始数据,我需要选择第一列中1的所有值,将我的选择偏移两列,然后将这些单元格合并为一列。然后,我需要在A列上运行复制函数,以删除所有备用单元格,并给出一个直接列表。我希望它能像这样:
1 122, 121
2 351
3 351, 352
4 176
9.1 350
10 351, 352
更重要的是,对于A列(因为我们有不同数量的组)和B列(因为每个组中有不同数量的值)中未知数量的值,这种情况需要发生未知次数
任何帮助都将不胜感激
谢谢,
Allan Ramsay试试看,它有单独的输入和输出表:
Sub RePackage()
Dim N As Long, K As Long, i As Long
Dim s1 As Worksheet
Dim s2 As Worksheet
Set s1 = Sheets("Sheet1")
Set s2 = Sheets("Sheet2")
s2.Range("B:B").NumberFormat = "@"
N = s1.Cells(Rows.Count, "A").End(xlUp).Row
s2.Cells(1, 1).Value = s1.Cells(1, 1).Value
s2.Cells(1, 2).Value = s1.Cells(1, 2).Text
v = s1.Cells(1, 1).Value
K = 1
For i = 2 To N
If s1.Cells(i, 1).Value = v Then
s2.Cells(K, 2).Value = s2.Cells(K, 2).Text & "," & s1.Cells(i, 2).Text
Else
K = K + 1
s2.Cells(K, 1).Value = s1.Cells(i, 1).Value
s2.Cells(K, 2).Value = s1.Cells(i, 2).Text
v = s1.Cells(i, 1).Value
End If
Next i
End Sub
你尝试过任何代码吗?如果你尝试过,请发布它。嘿,艾伦——当然我不知道这在你的业务流程中的位置,但是如果你没有通过这个“重新编码”其他程序的信息您可能希望签出Excel的内置功能“透视表”。透视表可以通过对行进行分类来帮助您以这种方式可视化数据: