こんな人が対象です
以下のようなユーザーを念頭に、使いやすさを比較します。
・事務で繰り返しの単純作業が多いので自動化したい。
・プログラミングの経験がない。
・ソフトウェアをインストールする権限がないので、windowsの標準機能でしたい。
・社内に質問できる人がいないため、トラブルは自力で解決しなければならない。
※簡単のためこのページでは用語を以下のように省略しています。
VBS: WSH上で動くVBSのこと
Jscript:WSH上で動くJscriptのこと
VBA: エクセル上で動くVBAのこと
結論
まずは結論から。
事務仕事の自動化では、
表やデータが関係するものはVBA、簡単な作業で頻繁に実行するもの (ファイル名の変更など) はVBSで作るという使い分けがおすすめです。
VBAとVBSはほとんど一緒なので、学習時間を節約でき、より高度なことをしたい場合この知識をVB.NETに発展させることができます。
※エクセルの代わりにgoogleスプレッドシートを使っている場合
表やデータが関係するものは googleスプレッドシート上で動くGASを使うことになります。
この場合、windows上の簡単な作業で頻繁に実行するものは、Jscriptで作るとよいと思います。 (Jscript の文法はGASとほぼ同じであるため)
比較した点
①文法の簡単さ
VBS | ★★★★☆ |
Jscript | ★★★☆☆ |
VBA | ★★★★★ |
powershell | ★★☆☆☆ |
・VBSとVBAは文法がほぼ同じです。これらは普通の英語に近いので、必要な勉強量が少なく、すぐに読めるようになります。
・powershellは基本的な使い方をするだけでも、プログラミング特有の概念を知る必要があるため、学習コストが高いように思います。
②高度な文法が使えるか
VBS | ★★☆☆☆ |
Jscript | ★★★☆☆ |
VBA | ★★★☆☆ |
powershell | ★★★★★ |
・VBAはExcelでできることはたいてい自動化できます。 また、VBSでできることもたいていVBAでできます。
・スキルアップして抽象的な記述ができるようになってくると、 文法の簡単な言語ほど、「他の言語では簡潔に記述できるのにこの言語では手間がかかるな」と感じるようになります。
③情報の豊富さ
VBS | ★★★☆☆ |
Jscript | ★★☆☆☆ |
VBA | ★★★★★ |
powershell | ★☆☆☆☆ |
・困ったらgoogleで検索すればいいというのは重要です。VBAは非常に情報が豊富です。
④プログラミング環境構築の簡単さ
VBS | ★★★★★ |
Jscript | ★★★★★ |
VBA | ★★★☆☆ |
powershell | ★★★★☆ |
・VBSとjscriptは、メモ帳で書いて拡張子を.vbsや.jsとして保存するだけのお手軽さです。 VBS はVBAとほとんど同じなので Visual Basic Edtor で作成するという技も使えます。
・VBAは開発タブを表示させる手間と、 Visual Basic Edtor の使い方を学習する手間があります。
・powershellはメモ帳で書くこともできますが、通常Windows PowerShell ISE を使用して記述します。
⑤実行の容易さ
VBS | ★★★★★ |
Jscript | ★★★★★ |
VBA | ★★☆☆☆ |
powershell | ★★★★☆ |
・VBSとjscriptはダブルクリックで即座に実行されます。 正しく作ったのになぜか動かない(ブロックされている)ということがなく便利です。
一方で、ダウンロードしたvbsファイルがウイルスだったとしてもダブルクリックで即座に実行されてしまうデメリットがあります。 中身がわからないvbsファイルやjsファイルは実行しないよう注意が必要です。
・powershellはセキュリティ上の理由によりWindowsの設定を変えないと実行できません。設定を変えればpowershellはダブルクリックで即座に実行されます。
・VBAはエクセルが起動してから実行することとなるので、気軽に頻繁に実行する用途には適しません。また、初期設定でセキュリティ上の理由により実行がブロックされます。実行の手間がVBAの最大の弱点です。
⑥その他機能
・VBSとJscriptはアイコンにドラッグアンドドロップすると処理するプログラムを簡単に作れます。この機能はよく使います。
This site is protected by reCAPTCHA and the GooglePrivacy Policy and Terms of Service apply.