EXCEL - 宏根据单元格值有条件地合并行

时间:2013-11-05 04:27:33

标签: excel vba excel-vba merge

我正在使用一个VBA宏,如果当前行的Col C内容为空,它将把当前行的内容与前一行的内容合并


Input
Col A  | Col B  | Col C 
text1A | text1B | 1
text2A | text2B | 
text3A | text3B | 
text4A | text4B | 2
text5A | text5B | 

Output
Col A                | Col B                 | Col C 
text1A text2A text3A | text1B text2B test3B  | 1
text4A text5A        | text4B text5B         | 2

有类似的问题,但我对VBA的了解太基础,不适用于这个具体案例的答案。谢谢!

1 个答案:

答案 0 :(得分:0)

我认为this question会帮助您找到所需的解决方案。您的问题几乎是一个重复的问题。

Sub mergeCategoryValues()
Dim lngRow As Long

With ActiveSheet
    lngRow = .Cells(65536, 1).End(xlUp).Row
    .Cells(1).CurrentRegion.Sort key1:=.Cells(1), Header:=xlYes

    Do
        If .Cells(lngRow, 1) = .Cells(lngRow - 1, 1) Then
            .Cells(lngRow - 1, 3) = .Cells(lngRow - 1, 3) & "; " & .Cells(lngRow, 3)

            .Rows(lngRow).Delete
        End If

        lngRow = lngRow - 1
    Loop Until lngRow = 1
End With
End Sub

这段代码对我有用。答案发布在here

中的问题上