ExcelマクロVBA入門 | 第54回.Windowsオブジェクト | Excelマクロの基礎と応用、エクセルVBAの入門・初級・初心者向け解説



最終更新日:2018-01-24

第54回.Windowsオブジェクト


Windowオブジェクトは、ブックやシートの見方を帰ることのできるウィンドウになりますが、、少々解りづらいです。

スクロールバー、枠線などの多くのワークシート関連の見た目は、実際にはウィンドウのプロパティです。


Window オブジェクトの集まりが、 Windowsコレクションであり、
Windowオブジェクトは、Windowsコレクションのメンバーです。


Windowの指定方法

Windows("ウインドウ名") ・・・ ウインドウ名で指定されるウインドウ

ActiveWindow ・・・ アクティブウインドウ

ウインドウ名は、ワークブックに1つだけウインドウが存在している場合は、

ウインドウ名 = ワークブック名

複数ウインドウが存在している場合は、

ウインドウ名 = ワークブック名:ウインドウ番号



データ型

Window

つまり、

Dim 変数 As Window

のように使います。

ただ、このような使い方は実際にはあまりしません。



Windowオブジェクトに含まれるプロパティ・メソッドは、非常にたくさんあります。

Windowのプロパティ、メソッドの一覧

Windowオブジェクトの、プロパティとメソッドの、ごく一部で良く使うものを紹介します。

Windowのプロパティとメソッド

プロパティ DisplayGridlines 枠線を表示
DisplayHeadings 行と列の両方の見出しを表示
DisplayHorizontalScrollBar 水平スクロール バー
DisplayVerticalScrollBar 垂直スクロール バー
DisplayWorkbookTabs シート見出しを表示
FreezePanes 分割ウィンドウ枠を固定します
Zoom 表示サイズを、パーセント単位
メソッド Activate アクティブにする
Close 閉じる
SmallScroll 行または列数分だけウィンドウをスクロールします
LargeScroll ページ数分だけウィンドウをスクロールします
NewWindow 新しいウィンドウ、またはウィンドウのコピーを作成

今までに出てきたのは、Activateくらいです。



恐らく、WorkbookオブジェクトやWorkSheetオブジェクトとの違いに戸惑うのではないかと思われます。

これは、エクセルの基本操作で、複数ウインドウを使う事が少ない事とも関係していると思います。

上で紹介した、プロパティ・メソッドは、Windowオブジェクトのメンバーであり、

WorkbookオブジェクトやWorkSheetオブジェクトには存在していません。

つまり、スクロールバーや枠線は、ブックやシートに設定するものではなく、
Windowオブジェクトに設定するものだということです。


例えば

DisplayGridlines ・・・ 枠線を表示

これは、ワークシートでもなければ、ワークブックの情報でもないのです。

従って、「新しいウインドウを開く」では、その情報は引き継がれません。


部屋があり、その窓(ウインドウ)から部屋を見ていると考えて下さい。

部屋の上の方を見ているとか、窓に目盛をつけて見易くしているとか、

それらは、部屋の中には一切関係していないのです。

別の窓から覗けば、部屋の中は同じでも、別の見え方になります。



Windowオブジェクトは、少々理解しづらいのですが、

ここで紹介したプロパティが使えれば問題ないでしょう。




同じテーマ「マクロVBA入門」の記事

第51回.Withステートメント
第52回.オブジェクト変数とSetステートメント
第53回.Workbookオブジェクト
第55回.Worksheetオブジェクト
第56回.Rangeオブジェクト
第57回.Applicationのプロパティ
第58回.コレクションとは
第59回.コレクション処理(For Each)
第60回.エラー処理(On Error)
第61回.「On Error Go To」と「Exit Sub」

新着記事 ・・・新着記事一覧を見る

VBAを定型文で覚えよう|ExcelマクロVBA技術解説(3月26日)
VBAスタンダード試験対策まとめ|MOS VBAエキスパート対策(3月16日)
ユーザーフォームとメニューの操作|MOS VBAエキスパート対策(3月14日)
ファイルの操作|MOS VBAエキスパート対策(3月14日)
ユーザーフォームの各種イベント|Excelユーザーフォーム(3月13日)
レジストリの操作|MOS VBAエキスパート対策(3月12日)
変数と配列|MOS VBAエキスパート対策(3月12日)
Colorプロパティの設定値一覧|VBA技術解説(3月12日)
APIとOLEオートメーション|MOS VBAエキスパート対策(3月11日)
エラーへの対処|MOS VBAエキスパート対策(3月10日)

アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
3.RangeとCellsの使い方|ExcelマクロVBA入門
4.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
5.変数とデータ型(Dim)|ExcelマクロVBA入門
6.ひらがな⇔カタカナの変換|エクセル基本操作
7.マクロって何?VBAって何?|ExcelマクロVBA入門
8.定数と型宣言文字(Const)|ExcelマクロVBA入門
9.とにかく書いて見よう(Sub,End Sub)|VBA入門
10.繰り返し処理(For Next)|ExcelマクロVBA入門



  • >
  • >
  • >
  • Windowsオブジェクト

  • このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


    記述には細心の注意をしたつもりですが、
    間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
    なお、掲載のVBAコードは自己責任で使ってください。万一データ破損等の損害が発生しても責任は負いません。





    このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。

    本文下部へ

    ↑ PAGE TOP