目次

現在表示されているセル範囲を取得したい

ExcelVBA のマクロで、現在表示中のセル範囲を取得したいことがあったのでマクロを作成してみました。

例として以下の画像のワークシートを準備してみました。

現在のウィンドウに A1:I11 の範囲が表示されています。この範囲をマクロで取得してみたいと思います。

例としてこのワークシートの表示状態でマクロを実行してみます。
例としてこのワークシートの表示状態でマクロを実行してみます。

目次まで戻る

マクロの一例

早速、下記のマクロを作成してみました。マクロの一例としてご覧ください、

VisibleRange というプロパティを使用してセル範囲を取得しています。

VisibleRange プロパティは、現在表示されているセル範囲を Range オブジェクト として取得する事ができるプロパティです。

Sub 現在表示されているセル範囲を取得するマクロ()

MsgBox ActiveWindow.VisibleRange.Address

End Sub

上のマクロを実行してみると以下の画像の結果になりました。

Msgbox にセル範囲 A1:J12 が出力されていますね。 A1:I11 の範囲が出力されると思っていましたが、 J 列と 12 行目が少し見えているので、その範囲までのアドレスを取得しているようです。

現在のウィンドウに表示されているセル範囲が取得できました。
現在のウィンドウに表示されているセル範囲が取得できました。

ダイアログボックスを拡大した画像です。

A1:J12 と出力されています。

ダイアログボックスに A1:A12 と出力されています。
ダイアログボックスに A1:A12 と出力されています。

目次まで戻る

テスト環境

  • Windows 11 Home 64 ビット
  • Microsoft Excel for Microsoft 365

目次まで戻る

あとがき

ExcelVBA カテゴリの目次は下のリンクよりご覧ください。 2022 年にリニューアルしました。

ExcelVBA マクロのサンプル集 目次 2022 年~ – pulogu.net
https://pulogu.net/blog/020-computer/excel-vba/table-of-contents/2022-edition/

以上閲覧ありがとうございました。

目次まで戻る

同じカテゴリの投稿( Excel VBA )

前後の投稿