- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセル2003VBAにて、ppostmessageでメニューボタンを)
Excel 2003 VBAでメニューボタンを押す方法
このQ&Aのポイント
- Excel 2003VBAでppostmessageを使用してメニューボタンを押す方法を知りたい。
- SendKeys関数を使用して他のアプリケーションを制御する際に、実行が時々されない問題が発生している。
- postmessage関数を使用してメニューのファイルを押す方法を知りたい。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
このご質問は、OkWaveのOfficeカテゴリに2ch のような挑戦的な題材を書いているような気がしてきます。あえて他の初歩的な方法でできるのにに、なぜ、できるか分からないような難しい方法で、出来ないから教えてくれ、というのでは誰も回答しません。 それに、何をしたいのか、目的が書かれていません。 >hButton = FindWindowExA(hwindow, vbNull, vbNullString, "ファイル(&F)") これで取れるわけがないです。C++やVB6に入っている spy.exe などお持ちではないのですか? ツールで調べれば、ハンドルが取れるか一目瞭然だと思います。 Win32APIが使いこなせているなら分かるはずですし、VBAが分かるなら、そのようなコードは使いません。Excelでマクロにしたいなら、CommandBars から、取り出すしかありません。これは、初歩的なものだと思います。 Set Cmdb = Application.CommandBars("Worksheet Menu Bar").Controls("ファイル(&F)") ここから、命令を取り出します。 それが嫌なら、外部ツール(キーボードマクロ)を用いるしかありません。
お礼
回答ありがとうございます。 「spy++のしょぼいの」というフリーソフトをインストールしました。 クラス名・キャプションがわかり、ウィンドウハンドルを取得することができました。 助かりました。