• ベストアンサー

Access 起動時、ウィンドウを最大化したいです

作成したAccessの起動時、ウィンドウを画面いっぱいに最大化して起動する方法はありますか 内側と外側、ウィンドウが2重になっていると思うのですが、それぞれ最大化を自由に指定できるのでしょうか 外側はどちらでもいいのですが、内側のウィンドウを最大化したいです。 わかりにくい表現ですいません。

質問者が選んだベストアンサー

  • ベストアンサー
  • DexMachina
  • ベストアンサー率73% (1287/1744)
回答No.1

「autoexec」という名前のマクロを作成して下さい。 (必ずこの名前である必要があります) そのマクロで、「アクション」に「最大化」を指定して保存すれば、起動時に内側ウィンドウが最大化されます。 また、「アクション」に「コマンドの実行」を指定して、画面左下の「コマンド」欄に「最大化 (アプリケーション)」を設定すれば、外側ウィンドウが最大化されます。 「マクロ名」列(デフォルト設定では非表示)に何も入力しない限り、これらや他のアクションを連続して行うこともできます。

nisey1
質問者

お礼

アドバイスのおかげでうまくいきました。 マクロは初めてですが自由に使えればほかも便利そうですね。 ありがとうございました

その他の回答 (2)

回答No.3

>外側 これは、アプリケーション自体を大きくって事ですか? それであれば、VBAです。 起動時に表示を設定しているフォームの「読み込み時」にイベントプロシージャを指定し、以下のコードを利用することで、フォームだけではなく、アプリケーションも最大化することができます。 Option Compare Database Option Explicit Private Declare Function ShowWindowAsync Lib "user32.dll" (ByVal hWnd As Long, ByVal nCmdShow As Long) As Long Private Declare Function GetParent Lib "user32" (ByVal hWnd As Long) As Long '読み込み時イベント Private Sub Form_Load()   Dim lngWnd_Form As Long   Dim lngWnd_App As Long      'フォームのハンドル   lngWnd_Form = Me.hWnd   'アプリケーションのハンドル   lngWnd_App = 関数_最高の親取得(lngWnd_Form)         'アプリケーションを最大化   Call 関数_最大化(lngWnd_App)      'フォームの最大化(ここはDoCmd.Maximizeでもいい)   Call 関数_最大化(lngWnd_Form) End Sub Private Sub 関数_最大化(ByVal inWnd As Long)   Const SW_SHOWMAXIMIZED = 3   Call ShowWindowAsync(inWnd, SW_SHOWMAXIMIZED) End Sub Private Function 関数_最高の親取得(ByVal inWnd As Long) As Long   Dim lngWnd   As Long   Dim lngParent  As Long      lngWnd = inWnd   Do     lngParent = GetParent(lngWnd)     If lngParent = 0 Then       Exit Do     End If     lngWnd = lngParent   Loop      関数_最高の親取得 = lngWnd End Function

nisey1
質問者

お礼

うまくいきました。ありがとうございました VBAはまだ無理みたいです。 これからもよろしくお願いします

  • sanbit
  • ベストアンサー率32% (16/50)
回答No.2

フォームのプロパティでイベントの開く時に DoCmd.Maximize としてみてください。最大化します。 また、フォームのプロパティのその他→ポップアップを「はい」にすると画面が上に出てきます、 試してください。

nisey1
質問者

お礼

'DoCmd' マクロを見つけることができません。 とでましたのでとまどいましたがアドバイスのおかげでうまくいきました。 マクロとかもっと勉強しておきます ありがとうございました