InternetExplorer廃止の波がやってきたぜ!という訳で、取り急ぎ
ExcelVBAツール内のボタンから社内システムのwebページを開く機能が、InternetExplorerを使用する設定になっていて、このままではヤバい!と改修依頼が。
Set objEG = CreateObject(“Edgeさんのアプリ名”)ではだめらしいと判明
- 既存の機能では、「InternetExplorer型」のオブジェクト変数(例えば「IE」)を用意して、「Set IE = CreateObject(“InternetExplorer.Application”)」で呼び出していた。
- EdgeはInternetExplorerの後継ソフトなんだし、VBAとも同じMicrosoft製なんだし、Edgeのアプリを呼び出すときの”名前”があるだろうから、調べて書き換えるくらいで済むんじゃね?とつい考えた。
- でもググったら沼っぽかった…(気になる方は逝ってみてくださいまし)
じゃあ、Excelのハイパーリンクでいいじゃん!と思いきや、それもダメ
- (アクセス権もらってなかった社内サイトだったので)人に試してもらうと「ログイン画面が開いちゃう&ログインしても本来のURLのページが開いてくれない」現象発生とのこと。
- そして、こちらのページさまにたどり着く
- ハイパーリンクでwebページを開く時は、Cookieの効かない専用のブラウザが使われているのだそう。
- よく見たら開発者の人が「ハイパーリンクだとNG」とコメント書いてくれてた。
chromeでwebページを開くにしてみたら、うまくいったよ!
- じゃあ、他のブラウザならどうだ?となり、こちらのページさまにたどり着く
- CreateObject関数使ってるし、とっつき易いよね!
- 試してみてもらったところ、ちゃんと飛ぶべきページが開いたとのこと。なので、この方向で実装予定です。
- 修正等あったら更新していきます!