プロが教える店舗&オフィスのセキュリティ対策術

vbaからIEを操作してファイルをダウンロードして、
そのファイルを開き、元のエクセルファイル(vbaが仕込まれているファイル)に貼り付ける
事をしようと試みています。

通知バーが出て、Sendkeysでファイルを開けそうなところまでできました。
その過程で行き詰っています。
通知バーが出てからですが、

Application.SendKeys ("%n"), True
Application.Wait Now() + TimeSerial(0, 0, 2)

SendKeys "{ENTER}"

Application.Wait Now() + TimeSerial(0, 0, 8)

Workbooks(2).Activate

Do Until InStr(Range("A8").Value, "日") = 0

If InStr(Range("A8").Value, "日") <> 0 Then
Range("8:9").Delete

ElseIf IsDate("A8") = True Then Range("8:9").Delete

End If

Loop

とSendkeySで操作してみています。

SendKeys "{ENTER}"の次に

End Subとすると、ダウンロードファイルは素直に開きます。

でも上記のようにWorkBooks(2).Activate …
と続けるとエラーが出ます。
そのエラーを停止させる(■停止ボタン?)と直後にダウンロードファイルが開きます。
その後エラー箇所から再度実行させると(▶スタートボタン?)
そのまま処理が流れてくれます。

つたない説明ですが、
Workbooks(2).Activateの前後で何かお気づきの事ございますでしょうか?
何かご教授お願いします。

Sendkeys 使わなくても…という構文あれば
それはそれで知りたいです。

A 回答 (2件)

通知バーって、完全に信用するって、オプションで指定できなかったっけ?

    • good
    • 0
この回答へのお礼

早々の返答ありがとうございます。
ちょっとオプション指定がハッキリわからないので、
詳細があれば教えてきた抱きたいです。

お礼日時:2020/11/24 08:08

今メッセージバーを表示するになってるけど、表示しないにすればよかったんじゃないかな?

「vba エクセルダウンロードファイル開か」の回答画像2
    • good
    • 0
この回答へのお礼

色々ご協力ありがとうございました。
その後色々試してみましたが解決には至らなかったものの、
また一つエクセルの知識が増えたので感謝いたしております。

お礼日時:2020/12/02 09:03

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!