ExcelWork.info

ウィンドウの状態を取得・設定(WindowState プロパティ)

ウィンドウの状態を取得・設定(WindowState プロパティ)

WindowState プロパティで、ウィンドウの状態を最大化、最小化、通常の状態のいずれかに設定することができます。またその状態を取得することができます。


【書式】

<取得>
object.WindowState

<設定>
object.WindowState = const


引数・戻り値

  • object  ・・・  対象となる Application オブジェクト または、Window オブジェクトを指定します。
  • const  ・・・  ウィンドウの状態を表す XlWindowState 列挙型 の定数またはその値を指定します。
    定数 値 内容
    xlMaximized -4137 最大化
    xlMinimized -4140 最小化
    xlNormal -4143 標準


対象オブジェクトに、Window オブジェクトを指定すると、指定したウィンドウ(ブック)の状態を取得および設定します。対象オブジェクトに、Application オブジェクトを指定すると、Excel のウィンドウの状態を取得および設定します。(Excel 2010 以前のバージョン)

Excel 2013 になり、SDI(シングル ドキュメント インターフェイス)が使用されるようになったため、WindowState プロパティで、対象となるオブジェクトに、Application オブジェクト、Window オブジェクトのいずれを指定しても同じ結果になります。

MDI と SDI について
Excel 2010 までは、MDI(マルチ ドキュメント インターフェイス)が使用されていました。これは、Excel のアプリケーションウィンドウ内に、複数のブックを開き、メニューやツールバー等は、Excel ウィンドウにあるものを共有します。
一方、Excel 2013 では、SDI(シングル ドキュメント インターフェイス)に変更され、ブックごとにウィンドウが独立するようになりました。



ウィンドウサイズの変更の可否を取得・設定(EnableResize プロパティ)

EnableResize プロパティ を使用すると指定したウィンドウサイズ変更の可否を取得および設定することができます。
ここでの「ウィンドウ」とは、「Excel のウィンドウ」ではなく、その中に開いた各ブックのウィンドウのことを指します。つまり、Excel 2013 の場合は、ブックごとにウィンドウが独立しているので、EnableResize プロパティ を指定しても無効になります(常に True の状態)。


【書式】

<取得>
object.EnableResize

<設定>
object.EnableResize = boolean


引数・戻り値

  • object  ・・・  対象となる Window オブジェクトを指定します。
  • boolean  ・・・  ブール型(Boolean)の値を指定します。True を指定するとウィンドウの大きさを変更することができます。False を指定するとウィンドウの大きさを変更することができなくなります。


WindowState プロパティ 使用例

サンプルVBAソース


実行結果