• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:メモ帳を好きな位置で開くには?)

メモ帳を好きな位置で開く方法とは?

このQ&Aのポイント
  • メモ帳を特定の位置で開く方法を教えてください。
  • Shell関数を使用してアプリケーションを開く際に、サイズや位置を指定する方法を知りたいです。
  • サイズや位置を指定してメモ帳を開く方法を教えてください。

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

  • ベストアンサー
回答No.1

Shell は、実行ファイルを実行するだけ、つまりメモ帳などを起動するだけの関数です。メモ帳のようにオートメーションに対応していない(CreateObject で作製できない)アプリケーションでは、起動後に API 関数で設定することになるかと思います。 参考 URL では、Shell で起動したウィンドウを AppActivate でアクティブにし、そのハンドル(Windows が管理に用いている各ウィンドウの番号)を GetForegroundWindow で取得し、GetWindowPlacement で位置・大きさを取得し、その一部を修正して SetWindowPlacement で設定しています。 余談ですが、質問文のように位置などを指定せず単に起動するだけなら、次のとおり変数の宣言は不要です。 Sub Sample() Shell "notepad", vbNormalFocus  '「notepad.exe」でもよい End Sub

参考URL:
http://www.moug.net/tech/acvba/0010014.html
vdrqmaqbehg
質問者

お礼

CreateObject関数を使わずに開くアプリケーション(=オートメーションに対応していないアプリケーション) を操作する場合はAPIを使えばいいのですね。 とてもわかりやすい説明ありがとうございます。 APIでやってみます。 私の提示したコードは、iは余計だったようですね。

関連するQ&A