Excel在保留数据的同时在column1上合并相同的值

我有一个excel表,看起来像这个。

图片1

正如你所看到的,这个产品2005和3004被列出不止一次,因为这个相同的产品有不同的基于销售价格的价格值。 就像,如果你买了50件,价格就会降低。

我想要的是 – 假设有一个办法可以达到 – 是这样的:

图片2

ProductID列是唯一的,并在同一行上input相同的产品ID。 随着他们的销售Scala和价格(每)价值增加(如果有)在下一列。 有没有解决scheme来改变这样的编码表? 有太多的线要手动编辑。

请build议。 谢谢。

有可能有更好的方法来做到这一点,但我已经创build了一个简单的循环,在列A中查找重复值,然后相应地处理数据。 为了简单起见,我正在努力工作。 注意:除非要添加更多逻辑,否则必须在完成时手动创build标题。

编辑更简单的代码

Sub TransposeData() Dim WS As Worksheet Dim LastCell As Range Dim LastCellRowNumber As Long Set WS = Worksheets("Sheet1") With WS Set LastCell = .Cells(.Rows.Count, "A").End(xlUp) LastCellRowNumber = LastCell.Row End With 'Loop through column A bottom up For i = LastCellRowNumber To 2 Step -1 ' Check if value in current cell matches value in cell above it If (Range("A" & i).Value = Range("A" & i).Offset(-1, 0).Value) Then 'Shift current values over Range("C" & i & ":D" & i).Insert Shift:=xlToRight 'Copy new values down Range("C" & i).Value = Range("C" & i - 1).Value Range("D" & i).Value = Range("D" & i - 1).Value 'Delete row Rows(i - 1).Delete Shift:=xlUp End If Next i End Sub 

结果:

在这里输入图像说明