|
▼EMU さん:
>▼Seraphさん、こんばんわ。たびたび恐れ入ります。
どもども
最初に説明しておけばよかったのかもしれませんが、、、
>〜上記の処理でウインドウ名取得〜
>Windows(strWindowName).Activate
>
>とすれば、アクティブウインドウを変更できると考えていたのですが、
>「実行時エラー’9’
> インデックスが有効範囲にありません。」
>とメッセージが出てきてしまいます。
>どうしたらよいかおしえていただけませんか?
Windows(strWindowName).Activate で、Excel以外のウィンドウを
イジる事は出来ません。
このコードを、長く書くと
Excel.Application.Windows(strWindowName).Activate
となります。
つまり、Excel内のウィンドウを指し示しているのです。
なので、strWindowNameの内容がWindowsコレクション内のどのWindowオブジェクト
にも名前が一致しません。
で、エラーとなって「インデックスが有効範囲にありません。」と言うメッセージが
出るのです。
従って、ご希望の処理を行うには、先のコードで取得したウィンドウハンドルを引数
にしてAPIの SetForegroundWindow()関数 を呼出すのが良いと思います。
|
|