IEからのダウンロード時に表示される、
通知バーの「開く」ボタンをVBAを使ってクリックしたいのですが、
sendkey以外で、良い方法はございますでしょうか。
よろしくお願いいたします。
sendkeyで開いてしまうと、numlock等がオフになるので、極力使いたくないです。
(理由が分からないのですが、個人マクロブックも再度開いてしまう)
-----------現在のコード----------------
#If VBA7 Then Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal ms As LongPtr) #Else Private Declare Sub Sleep Lib "kernel32" (ByVal ms As Long) #End If sub ie() Dim objIE As InternetExplorer Dim objInpTxt As HTMLInputTextElement Dim objTag As Object Set objIE = New InternetExplorerMedium objIE.Visible = True objIE.navigate "http://(社内イントラの為、略)" Do While objIE.Busy = True Or objIE.readyState <> 4 DoEvents Loop Set objInpTxt = objIE.document.getElementsByName("inp_param")(0) objInpTxt.Value = "(社内品番の為、略)" For Each objTag In objIE.document.getElementsByTagName("input") If InStr(objTag.outerHTML, "データ抽出") > 0 Then objTag.Click Do While objIE.Busy = True Or objIE.readyState <> 4 DoEvents Loop Exit For End If Next For Each objTag In objIE.document.getElementsByTagName("input") If InStr(objTag.outerHTML, "ダウンロードCSV") > 0 Then objTag.Click Exit For End If Next Sleep 3000 SendKeys "%O", True End Sub
>sendkey以外
sendkeyでは出来た上での質問ですか?そうではないですか?
前提や背景、現在のコードなど提示してください。
コードはマークダウンのcode機能にてご提示ください
m.ts10806さま
sendkeyでは出来た上での質問でございます。
コードを追記しましたので、よろしくお願いいたします。
sendkeyを使っておりましたが、numlock等がオフになると苦情が相次ぎ見直したいと思っています。
後、一部で個人マクロブックが開かれてしまうと。
お恥ずかしながら上手く使いこなせておらず。。すみません。
code機能にて再度追記しました。よろしくお願いいたします。
SendMessage APIでごにょごにょするのも結局はsendkeyと同じですから。
ファイルパスがわかってるなら、IEを通して開かせなくても、VBAからShell関数で開く、とかではダメなんでしょうか。
fromMZ1500さま、こんにちは。
ご回答頂き、ありがとうございます。
shell関数というものを、たった今知りました。
一度勉強しまして、使用できるかどうか、検討してみたいと思います。
回答1件
あなたの回答
tips
プレビュー