SIerでSEではない仕事をしています、ねこどんです🐾
仕事上、毎日決まった作業をしなくてはならなくて、その都度ブラウザを立ち上げてページをいくつも開くのは面倒だと思いました。
そこで役立つVBScriptです。
え~何それと思う方もいるかもですが、ここに来る方ならおそらく知っているはず。
マイクロソフトのスクリプト言語です。
ということで、WindowsのPCを使っている方向けに、VBSでChromeとIEで複数タブを起動できるコードを載せておきますね。
VBSでChromeとIEで複数タブを起動できるコード
Option Explicit
Dim objCR
'WshShellオブジェクトのオブジェクトを作成する
Set objCR = WScript.CreateObject("WSCript.shell")
'chrome.exeを表示し、URLを引数で渡す
objCR.run """C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"" ""URL1"" ""URL2"""
Dim objIE
'IEのオブジェクトを作成する
set objIE = CreateObject("InternetExplorer.Application")
'IEを見える形で表示する
objIE.Visible = True
'URLを新規ウィンドウで開く
objIE.Navigate "URL"
'URLを新規タブで開く
objIE.Navigate2 "URL2",&H800
Set objIE = Nothing
上記のコードをメモ帳に張り付けて、「名前を付けて保存」⇒拡張子を「.vbs」にすればOKです。
「Option Explicit」を一番最初に書いといてください。変数の宣言をしなければ使えないおまじないです。
あとは使いたいときにファイルをクリックすれば実行されます。
私はC直下に「Script」フォルダを作っていて、その中に入ってます。
それで、ショートカットをデスクトップに置いていますね。
VBSでChromeだけ複数タブ起動させる
ChromeとIEって微妙に書き方違うんですよね。
念のため、Chromeの部分とIEの部分を分けて載せておきます。
Dim objCR
'WshShellオブジェクトのオブジェクトを作成する
Set objCR = WScript.CreateObject("WSCript.shell")
'chrome.exeを表示し、URLを引数で渡す
objCR.run """C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"" ""URL1"" ""URL2"""
冒頭の「Dim objCR」が変数の宣言です。
Chromeの複数タブ起動の部分は、一行で書けてしまうのです。
IEだとNavigateを使いますが、Chromeの場合はrunです。
「objCR.run」の後にchrome.exeのパスを書いた後、表示させたいページのURLをいくらでも引数として渡せます。便利~
VBSでIEだけ複数タブ起動させる
Chromeは便利ですが、IEはめんどいです。
Dim objIE
'IEのオブジェクトを作成する
set objIE = CreateObject("InternetExplorer.Application")
'IEを見える形で表示する
objIE.Visible = True
'URLを新規ウィンドウで開く
objIE.Navigate "URL"
'URLを新規タブで開く
objIE.Navigate2 "URL2",&H800
Set objIE = Nothing
IEだとオブジェクト作成後、まず我々ユーザーに見える状態にしなければなりません。
その後、objIE.NavigateでURLを新規ウィンドウで開きます。
複数タブを開きたい場合は、objIE.Navigate2でURLを書いた後、「,」で区切り、「&;H800」を加える必要があります。
3つ目以降のタブも2つ目のタブと同様の書き方でOKです。
VBSの複数タブ起動で仕事効率化まとめ
大体こんなことを書いてました。
- VBSはメモ帳に書いて「.vbs」で保存します
- Option Explicit:変数の宣言を強制する
- Dim 変数名:変数の宣言
- オブジェクトを作る⇒起動⇒URLを渡す
よく知らんでもコピペしちゃえば使えちゃうので、ちょっとでも業務を短縮したい方は是非。



コメント