TOP

テキストを失わずにセルを結合する

説明

テキストと結合する必要があるセルが多数あるとします。 Excel 標準セットには、「結合して中央揃え」という同様の機能がありますが、結合を実行すると、最も外側のセルのテキストのみが残ります。したがって、そのような目的には独自のマクロを使用する必要があります。


マクロの VBA コード

これを行うには、エディター Visual Basic (Alt+F11) を開き、VBA module (Insert - Module) を挿入し、この関数のテキストをコピーします。

Sub MergeCell()
    Const sDELIM    As String = " "
    Dim   rCell     As Range
    Dim   sMergeStr As String
    
    If TypeName(Selection) <> "Range" Then Exit Sub
    
    With Selection
        For Each rCell In .Cells
            sMergeStr = sMergeStr & sDELIM & rCell.Text
        Next rCell
        
        Application.DisplayAlerts = False
        .Merge Across:=False
        Application.DisplayAlerts = True
        
        .Item(1).Value = Mid(sMergeStr, 1 + Len(sDELIM))
    End With
End Sub

保存して Excel に戻ります。

次に、必要なセルを選択し、マクロ (Alt+F8) を実行します (マクロ名: "MergeCell")。