根据特定值合并列

根据特定值合并列

我正在处理一个 excel 表格,需要根据车辆编号合并单元格。如果两个或多个连续单元格中有相同的车辆编号,则需要将单元格合并到车辆编号右侧。我有一个巨大的文件,其中包含 200 多个车辆编号。因此,根据每辆车合并单元格是一项耗时的任务。有什么方法可以简化此过程。我附上了我的 excel 表格的屏幕截图。

截屏

答案1

我建议您使用 VBA 代码来实现您的目标,因为它是最好和最简单的应用方法。

如果右列左侧的值重复,则可以使用下面编写的 VBA 代码来合并右列中相邻的单元格。

检查屏幕截图:

在此处输入图片描述

Sub MergeSameCell()

Dim Rng As Range, xCell As Range
Dim xRows As Integer
xTitleId = "Merge Cells In Excel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
xRows = WorkRng.Rows.Count
For Each Rng In WorkRng.Columns
    For i = 1 To xRows - 1
        For j = i + 1 To xRows
            If Rng.Cells(i, 1).Value <> Rng.Cells(j, 1).Value Then
                Exit For
            End If
        Next
        WorkRng.Parent.Range(Rng.Cells(i, 2), Rng.Cells(j - 1, 2)).Merge
        WorkRng.Parent.Range(Rng.Cells(i, 3), Rng.Cells(j - 1, 3)).Merge
        WorkRng.Parent.Range(Rng.Cells(i, 4), Rng.Cells(j - 1, 4)).Merge
        i = j - 1

    Next
Next
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub

如何使用代码:

  • 按住 ALT + F11 键,将打开 Microsoft Visual Basic for Applications 窗口。
  • 单击“插入”,然后单击“模块”,并粘贴代码。
  • 运行宏。
  • 当出现输入框时,选择可获得重复值的数据范围。
  • 单击“确定”完成。

你完成工作了。

相关内容