How to merge cells based on similar values - Excel 2010

て烟熏妆下的殇ゞ 提交于 2019-12-19 04:20:12

问题


I have a problem merging cells in excel based on similar values for one column- I would like to keep other columns data - let's view some screenshots and it will be clearer:

This above is the initial state of the Data, what I want to achieve is this:

I'm sure there is a way to do it with VB or formulas- I need the most simple way possible as this is for a customer and it needs to be easy.

Thank you all in advanced.


回答1:


Option Explicit

Private Sub MergeCells()
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False

    Dim rngMerge As Range, cell As Range
    Set rngMerge = Range("A1:A100") 'Set the range limits here

MergeAgain:
    For Each cell In rngMerge
        If cell.Value = cell.Offset(1, 0).Value And IsEmpty(cell) = False Then
            Range(cell, cell.Offset(1, 0)).Merge
            GoTo MergeAgain
        End If
    Next

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

You can hardcode the range limits (i.e. the last row in Column A to check), have the user input it each time, or programmatically find the last row in the range . Either way, this should get you started.

By the way, you could find the last row in column A with the following:

Dim i As Integer
    i = Range("A1").End(xlDown).Row
    Set rngMerge = Range("A1:A" & i)


来源:https://stackoverflow.com/questions/17637698/how-to-merge-cells-based-on-similar-values-excel-2010

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!