【问题标题】:Macro to merge cells in a specific column if same rows are merged in a different column如果将相同的行合并到不同的列中,则合并特定列中的单元格的宏
【发布时间】:2013-06-22 21:36:58
【问题描述】:

如果这些相同的行已经合并到另一列中,我需要帮助找到一个宏,该宏可以跨特定列中的行合并单元格。下面是我现在所拥有的屏幕截图,显示了 B 列中需要根据 A 列中已合并的单元格进行合并的单元格。

下面的截图是宏运行后我需要电子表格的样子

【问题讨论】:

  • 到目前为止你有什么代码?
  • 发布您的代码或完成的任何工作,而不仅仅是您的要求。
  • 您是否尝试过在 Excel 中记录合并以获取一些代码,然后编写循环或任何东西

标签: excel merge excel-2007 vba


【解决方案1】:

nixda 已经回答过了...

Sub mergecolumn()

Dim cnt As Integer
Dim rng As Range
Dim str As String

For i = ActiveSheet.UsedRange.Rows.Count To 1 Step -1
cnt = Cells(i, 1).MergeArea.Count
Set rng = Range(Cells(i, 2), Cells(i - cnt + 1, 2))

For Each cl In rng
    If Not IsEmpty(cl) Then str = str + vbNewLine + cl
Next
If str <> "" Then str = Right(str, Len(str) - 2)

Application.DisplayAlerts = False
rng.Merge
rng = str
Application.DisplayAlerts = True

str = ""
i = i - cnt + 1
Next i

End Sub

【讨论】:

    猜你喜欢
    • 2020-04-13
    • 1970-01-01
    • 2015-07-20
    • 2013-09-06
    • 2015-08-05
    • 2017-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多