即効テクニック |
● 概要 ● 構文 expression.WindowHeight 取得のみ expression.WindowWidth 取得のみ expression.InsideHeight 設定/取得 expression.InsideWidth 設定/取得 expression.Width 設定/取得 設定項目 内容 expression Formオブジェクト[省略可能] 構文 expression.Height 設定/取得 設定項目 内容 expression Sectionオブジェクト[省略不可] WindowHeightプロパティ、WindowWidthプロパティ、InsideHeightプロパティ、InsideWidthプロパティ、Widthプロパティは、フォームモジュールで使用する場合のみ省略可能です。 省略した場合、自身のFormオブジェクトを指定したことになります。 Heightプロパティは、Sectionオブジェクトなので、Formオブジェクトを指定するとエラーになりますので注意してください。 WindowHeightプロパティとWindowWidthプロパティは、ウィンドウの高さと幅の取得に使用します。 これらのプロパティを設定に使用することはできません。 InsideHeightプロパティとInsideWidthプロパティでは、ウィンドウ内側の高さと幅を設定または取得します。 ウィンドウ内側とは、スクロールバーとレコードセレクタを除く領域です。 Heightプロパティはセクションの高さの設定または取得に使用します。 Widthプロパティはフォームの幅の設定または取得に使用します。 プロパティ値の単位はtwipです。印刷したときに1cmになるサイズが567twip、1インチになるサイズが1440twipです。 次のコードは、新規にフォームを作成して、そのフォームのサイズを設定し、Accessウィンドウの左上隅に表示するものです。 ● サンプル ● 'フォームのサイズを設定する Sub WindowSizeSample() Dim myForm As Form '最小化したフォームを作成 Set myForm = CreateForm() 'デザインビューでフォームを開く DoCmd.Restore With myForm 'ウィンドウ内側の高さを設定 .InsideHeight = 5000 'ウィンドウ内側の幅を設定 .InsideWidth = 8000 '詳細セクションの高さを設定 .Section(acDetail).Height = 3000 'フォームの幅を設定 .Width = 4000 End With 'ウィンドウを左上隅に移動 DoCmd.MoveSize 0, 0 'ウィンドウのサイズを表示 MsgBox "高さ " & myForm.WindowHeight & vbCr _ & "幅 " & myForm.WindowWidth End Sub ● 実行結果 ● 新規フォームが設定した値でAccessウィンドウの左上隅に表示されます。メッセージボックスに表示されている高さと幅は、フォーム1のウィンドウサイズです。 ● 注意 ● WindowHeightプロパティとWindowWidthプロパティは、設定には使用できません。ウィンドウサイズを設定したいときは、DoCmdオブジェクトのMoveSizeメソッドを使っ てください。