Excelの全シートのセル結合をまとめて解除するVBAのサンプルコード

VBA
記事内に広告が含まれています。

Excelの全シートのセル結合をまとめて解除するVBAのサンプルコードを紹介します。

仕様

以下のようなサンプル実行を想定します。

  • シートが複数あり、それぞれのシートでセル結合されたセルがあります。
  • そして、マクロの実行で全てのシートのセル結合を解除します。

例えば以下のようなシートが用意されたブックのイメージです。

シート「Sheet1」

シート「Sheet2」

シート「Sheet3」

コピーの手間があったので全部同じような結合にしてしまいました。

実用的なイメージとはかけ離れていますが、どのような結合でも問題ありません。

ソースコード

UnMerge関数を使用することによって、セル結合が解除できます。

Worksheet(XXXXXX).UsedRange.UnMerge

シートの数だけループし、UnMerge関数で各シートのセル結合を解除します。

Option Explicit

Sub unMergeAllSheets()

    Dim SheetNo As Long
    For SheetNo = 1 To Worksheets.Count
        
        'セル結合解除
        Worksheets(SheetNo).UsedRange.UnMerge
        
    Next

End Sub

これをThisWorkbookのところで実装しています。

余談ですが、UnMergeをMergeに書き換えたら大変なことになるんじゃないでしょうか。

やってもあまり意味はなさそうなので試してはいませんが。

実行

実行手順

Alt + F8でマクロの一覧から、先ほどのマクロ関数を選択して実行します。

実行結果

マクロの実行ボタンを押下すると、すべてのシートのセル結合が解除されました。

以下に実行結果を示します。

シート「Sheet1」

シート「Sheet2」

シート「Sheet3」

参考情報

環境

下記の環境で作成・実行しております。

No.環境バージョン
1OSWindows11
2ExcelExcel2016
環境一覧

以上です。