Home » Excel VBA Rangeオブジェクト » 結合セル » Excel VBAのMergeArea(1)とは

動作検証バージョン:Windows 11 Home + 64bit Excel(バージョン2304 ビルド16327.20134)

「vba mergearea(1)」
といった検索キーワードで時折アクセスがあります。

Excel VBAのコード「.MergeArea(1)」の意味を調べていらしたのでしょう。

[スポンサードリンク]

MergeArea(1)を確認するサンプルマクロ

結合セルがアクティブな状態で、以下のExcelマクロを実行してください。

Sub MergeAreaを確認する()
 With ActiveCell
  Debug.Print .MergeArea.Address(False, False)
  Debug.Print .MergeArea.Item(1).Address(False, False)
  Debug.Print .MergeArea(1).Address(False, False)
 End With
End Sub

たとえば、B2:D3セルが結合されていてアクティブなときに上記のマクロを実行すると、

B2:D3
B2
B2

と出力されます。

.MergeArea.Address(False, False)

で出力されたのが、「B2:D3」で、

.MergeArea.Item(1).Address(False, False)

.MergeArea(1).Address(False, False)

で出力されたのが、「B2」です。

MergeArea(1)で結合セルの1番左上のRangeを取得できる

「.MergeArea(1)」は、「.MergeArea.Item(1)」の「.Item」を省略した書き方です。

RangeオブジェクトのItemプロパティを使うと、セル範囲の先頭セル・1番左上のセルを取得できます。

この挙動は、Range.MergeAreaプロパティで取得できる結合セルの場合も同じです。

つまり「.MergeArea(1)」や「.MergeArea.Item(1)」は、結合セルの1番左上のセルを取得するコードです。

[スポンサードリンク]

Home » Excel VBA Rangeオブジェクト » 結合セル » Excel VBAのMergeArea(1)とは

「結合セル」の記事一覧

検索


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

.