2019年9月17日火曜日

会社のパソコンが新しくなって、ブラウザーのEdgeがChromeより早く起動すると感じた - Edge起動コード(VBA・そのほか)

       
最近、勤めている会社が、ラップトップをWindows10にアップしました。
今までは、Windows7でしたので、ずいぶんと引っ張って使ったもんだ。

ただ、自宅ではすでに10を使用しており、操作感で違和感はないの。
一方、OSの7は、来年1月14日に延長サポートが終了してしまうな。

このため、この時期に移行したと思いますが、社内システムは大規模だ。
全社員のPCを刷新するとなると千台以上になるし、ソフトも入れ替え。

結構、電算関係者はビッグプロジェクトの仕事に関わってきたということ。
受け取ったPCは、デルの機種でLatitude7390とパワーアップしました。

以前より、CPの性能、メモリー、SSDがみな倍増しているのでうれしい。
サクサクと起動してくれるし、何よりもブラウザーにEdgeが加わりました。

早速使いましたが、Chromeを立ち上げるより、若干早く起動しますね。
動きも意外に機敏なので、グーグルの翻訳機能を使う際に使用します。

レスポンスが思った以上に良くて、クロームばっかりだったのとは違います。
ただ、ウインドウズ内部にIE11も隠れていて、勤怠ソフトに使われるの。
   
     
まあ、旧OSのシステムに組込んだソフトで、ブラウザーが必要ならIE11。
他方、インターネット上で情報検索をするときは、Edgeでも役立ちます。

要するに、目的別にブラウザーを使い分ければ良いだけと判断しました。
しかも、社内のメールシステムは、FireFoxから立ち上がる設定なんだ。

企業向けGメールなのに、立ち上げはどういうわけか、狐さんからでした。
以前、会社Mozila系のThunderBirdというメーラーを使っていました。

だから、その名残で、FireFoxからGメールを開くようにしているみたいね。
社員にとっては使えればいいわけで、仕事でより取り見取りのブラウザー。

そんなことを思いつつ、ところでVBAでEdgeを起動するにはどうしようか。
以前のIE11だと、外部アプリケーションで起動するオブジェクト指定だな。

 Dim WSH As Object
 Set WSH = CreateObject("Wscript.Shell")
 WSH.Run "https://www.msn.com/ja-jp", 3
 Set WSH = Nothing
End Sub

でも、Edgeは実行ファイルを伴わず、ウインドウズに組込まれています。
いろいろとネットでさがしてみましたが、基本的な起動は超自簡単です。

CreateObject("Shell.Application").ShellExecute "microsoft-edge:about:start"

でもねぇー、特定のURLを開くためのコード記述が、今一わかりません。
まあ、記述のstart部分にURLを書けばいいんだけど、””の括りが厄介。

例えば、ワークシートのセルに読み込みたいURLを書き込んだとします。
このセルの値を読み取って、ブラウザーに開かせる時、Chromeは簡単。

Dim Brwsr As Variant, cellValue As String
Set Brwsr = CreateObject("WScript.Shell")
cellValue = Worksheets(1).Cells(1, 1).Value
Brwsr.Run ("chrome.exe -url " & cellValue)

ところが、Edgeの場合、startの部分にセル値をどうやって入れ込むか。
ここにひと工夫が必要で、意外にネットで解決方法が見当たりません。

ならばと思って、必要な要素を配列化して、再結合させるアイデアだよ。
コードを書いてみましたが、もし皆さんの参考になるなら、使ってください。

Dim Brwsr As Variant, cellValue As String, Url As String
Dim arr(2) As String
Set Brwsr = CreateObject("Shell.Application")
arr(0) = "microsoft-edge:"
arr(1) = Worksheets(1).Cells(1, 1).Value
Url = Join(arr, "")
Brwsr.ShellExecute Url

注:Url = "microsoft-edge:" & Worksheets(1).Cells(1, 1).Value、と記述しても動作。

というわけで、WebBrowserのイベントコントロールは、未だIE11です。
その内、来年にはChromoumベースのEdgeが動き出すのだそうで、そうなると、Chromeのブラウザーと何ら変わりがなくなるような気もするのですが、その分、VBAからの柔軟なイベントコントロールはますます遠のいていって、VBAユーザーは、このままIE11を使い続けるしかないと思うのでした。



いいねと思ったら、三つポチっとね!
にほんブログ村 スキースノボーブログへにほんブログ村 スキースノボーブログ スキーへにほんブログ村 旅行ブログ 旅日記・旅の思い出へ
にほんブログ村    にほんブログ村      にほんブログ村 



0 件のコメント:

コメントを投稿