Home » Excel VBA Rangeオブジェクト » 結合セル » MergeCellsでセル結合されているか判定して結合範囲を取得する

MergeCellsでセル結合されているか判定して結合範囲を取得する

動作検証バージョン:Windows 11 Home + 64bit Excel バージョン 2509(ビルド19231.20156クイック実行)

「vba mergecells 範囲」
といった検索でアクセスがありました。
何を調べていらしたのかいくつかの可能性が考えられる検索キーワードです。

Range.MergeCellsプロパティで、セル結合されていることが判定できたときに、どのセル範囲が結合されているかを取得する方法を調べていらしたのかもしれません。

[スポンサードリンク]

セル結合されているか判定して結合範囲を取得するサンプルマクロ

以下のExcelマクロを参考にしてください。

Sub セル結合されているか判定して結合範囲を取得する()
 If ActiveCell.MergeCells Then
  MsgBox _
   ActiveCell.MergeArea.Address(False, False) & _
   "セルが、結合されています!"
 Else
  MsgBox "セル結合されていません。"
 End If
End Sub

アクティブセルが結合されているセルのときに、
「〇:〇セルが、結合されています!」
といったメッセージボックスが表示されます。

サンプルマクロで行っている処理

Range.MergeCellsプロパティは、セル結合されているかどうかを取得/設定するプロパティです。

上記のマクロではIf文で、このRange.MergeCellsプロパティを使っています。

 If ActiveCell.MergeCells Then

結合されているセル範囲を表すRangeオブジェクトを取得するには、Range.MergeAreaプロパティを使います。

上記のマクロではRange.MergeCellsプロパティでセル結合されていると判定したときに、Range.MergeAreaプロパティで結合範囲を表すRangeオブジェクトを取得して、

 If ActiveCell.MergeCells Then
  MsgBox _
   ActiveCell.MergeArea.Address(False, False) & _

Range.Addressプロパティでセル番地を取得しています。

 If ActiveCell.MergeCells Then
  MsgBox _
   ActiveCell.MergeArea.Address(False, False) & _

[スポンサードリンク]

Home » Excel VBA Rangeオブジェクト » 結合セル » MergeCellsでセル結合されているか判定して結合範囲を取得する

「結合セル」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.