• 締切済み

Win8のIE8にて必ず新規セッションで起動

VBAを使用してWebサイトにログインを行いたいのですが、ログインをする際に必ず新規セッションでウィンドウを起動してログインするようにするにはどのようなコードを組めばいいのでしょうか? 申し訳ありませんがどなたかご教授願います。

みんなの回答

  • x-1919
  • ベストアンサー率52% (91/173)
回答No.1

IE 8 以降はセッションが共有されますね。 iexplore.exe -noframemerging とすると新規セッションとなるようですが、開発中のプログラムで IE をどのように起動させようとしているのかがわからないので参考程度にしてください。 ちなみに IE 10 で実験したらうまくいきました。 http://blogs.technet.com/b/jpieblog/archive/2013/11/01/3607504.aspx

Lily0
質問者

お礼

ご回答ありがとうございます! 上記iexplore.exe -noframemergingで新規セッションを起動することはできたのですが、変数に組み込めずいまいち使い方がわからなかったです。 調べながらやってみたのですがどうしてもうまくいかず、そちらも教えていただけるとうれしいです。

Lily0
質問者

補足

下記のようなコードで現在は動かしているのですが、explore.exe -noframemergingで起動したIEを変数に組み込めないのです。 どのようにすれば上手く動くでしょうか・・・ sub ろぐいん() '変数 Dim IE As Object Dim UserID As String Dim UserPass As String 'ID,PASS設定 UserID = "ID" UserPass = "PASS" 'IE起動 Set IE = CreateObject("InternetExproler.Application") IE.Visible = True '接続 IE.navigate "http://" '文字入力 IE.document.gatelementbyid("aaa").Value = UserID IE.document.gatelementbyid("bbb").Value = UserPass '送信 Call IEButtonClick(IE, " 送信 ") Set IE = Nothing End Sub 'クリック Public Function IEButtonClick (ByRef IE As Object, ButtonValue As String) Dim ObjInput As Object For Each ObjInput In IE,document,getelementsbytagname("INPUT") If ObjInput,Value = ButtonValue Then ObjInput,Click Exit For End If Next End Function

関連するQ&A