Windows10 タスクスケジューラから Excel起動 アクティブにならず、VBAでIE制御ができない。マウスクリック起動時は正常に動作する。

Anonymous
2020-04-17T00:06:59+00:00

Windows10 64bit office365 32bit Excel VBA でIE制御を行い、指定のホームページからデータをダウンロードします。マウスクリックでExcelを起動すると、VBAが正常に動作し、IEのBusyとReadyStateフラグを正常に取得し、IE制御が正常に動作します。しかし、Window10のタスクスケジューラにExcelを登録して実行させると、Excelが起動して、IEも開きますが、「下部のタスクバーのExcelアイコンが点滅する」のみで、その後のAppActivate excelApp.Captionが動作せず、Excelをアクティブにできないため、IE制御ができません。マウスクリック時と同じExcel VBAなのに、タスク起動すると動作不良になる。インターネットで調べると、あるページで、

タスクスケジューラ起動時のWindows FormアプリがActiveにならない。

の回答の一部で、「プロセスが別のプロセスのウィンドウをフォアグランドにするには、幾つかの条件が必要になりました。条件が満たされない場合は、ウィンドウがフォアグランドになる代わりに、タスクバーのアイコンが点滅します。」

と同じ状況が起こっていると考えられます。これを回避するにはどうしたら良いでしょうか?半年ぐらい悩んでいます。

よろしくお願いします。

Microsoft 365 と Office | Excel | 家庭向け | Windows

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

質問作成者が受け入れた回答

Anonymous
2020-04-20T00:11:42+00:00

ATS_kuma3です。タスクスケジューラから起動したアプリが最前面に表示されない件について、別の角度から調査しました。バッチファイルを叩いて、VBSファイルから「Excel」を起動しました。

[Test,bat]

    cscript C:\Users\kuma3\Desktop\Test.vbs

[Test.vbs]

    Set App = CreateObject("Excel.Application")

    App.Application.Visible = true

    App.Application.Workbooks.Open("C:/Users/kuma3/Desktop/Test.xlsm")

この場合も、DOS窓に隠れて、Excelは、背面で動作しました。

私の感覚としては、マウスクリック時と同じ様に、アプリ1から別のアプリ2を起動すれば、アプリ2が前面に出るハズです。ところが現実は、背面に表示される。おかしいです。

そこで、いくつかのホームページをめくったところ、次の結論に達しました。

Windows10がアプリ1から起動したアプリ2が最前面に出ることを拒否している何かがある。

それが、「ForegroundLockTimeout」と言うレジストリキーでした。Defaultで、=(2000000)。

これをREGEDITを使って、ForegroundLockTimeout=0 にセットしたら、あら不思議、直りました。

バッチファイルから起動しても、タスクスケジューラから起動しても、マウスクリックした時と同じ様に、Excelが最前面に表示され、その後のIE表示、ExcelとIEとの画面展開、データダウンロードまで、何回繰り返しても正常に動作しました。

これで、この会議を終了します。 ありがとうございました。

この回答は役に立ちましたか?

2 人がこの回答が役に立ったと思いました。
0 件のコメント コメントはありません

2 件の追加の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2020-04-22T08:11:02+00:00

    ATS_kuma3 さん、こんにちは。

    ご返信ありがとうございます。

    レジストリ設定を変更することで正常に動作するようになったのですね。

    こちらではお役に立てませんでしたが、問題が無事に解消されたようで良かったです。

    同じようなトラブルに遭遇された方にも参考にしていただけるよう、コメントに [回答としてマーク] をさせていただきました。

    調査された内容を詳しく書いていただいて、ありがとうございます。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  2. Anonymous
    2020-04-17T07:57:25+00:00

    ATS_kuma3 さん、こんにちは。

    マイクロソフト コミュニティへの投稿ありがとうございます。

    タスク スケジューラに登録した Excel VBA が意図した通りに動作しないのですね。

    マイクロソフト コミュニティは一般ユーザー向けのフォーラムなので、こちらの内容については開発者向けの「MSDN フォーラム」や管理者向けの「TechNet フォーラム」で質問をされた方が情報が集まりやすいかと思います。

    せっかくこちらに投稿いただいたところお手数ですが、上記をご活用くださいね。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません