こんにちは!
くろんです!
突然ですが、ガスって知ってますか??
ガスはガスでも爆発しないガスです!
Google Apps Scriptってやつです!
端的に説明するとGoogle スプレッドシート/ドキュメント/プレゼンテーションとかで使えるスクリプトです。
(エクセルのVBA的な位置にいるやつです)
個人的にVBAよりいい感じなのでどこら辺が気に入っているか書いてきます。
1. 癖が少ない
基本的にJSがベースになっているので、gas独自の記述などはあまりありません。
なので、VBAみたいにそれ用の記述方法とかを頭に入れなくてもJSを触ったことがあれば割と感覚でコードが書ける印象です。
' 1: VBA
Sub hoge()
' ここにコード
End Sub
// 2: GAS
function hoge()
{
// ここにコード
}
こんな感じでよくわからない Sub とかいう単語の意味を覚えなくても済みます。
(VBA以外で使わんし、覚えても無駄に思う)
少なくともGASならJSの知識も得られるので無駄にならない感じがいいですね。
2. ドキュメントがいい感じ
VBAのドキュメント
https://docs.microsoft.com/ja-jp/office/vba/api/overview/excel
GASのドキュメント
https://developers.google.com/apps-script/reference
それぞれ基本的なセルアクセスとかに関するドキュメントはあまり変わらない感じですね。
GASの方は公式日本語ドキュメントが見つけられてないので日本語限定だと少し難しいかも。
そういう意味ではGASの方が少しマイナスかもしれませんね。
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/String
↑ JSのStringドキュメント ここの関数はGASでも使えます
ただ、公式ドキュメント外の情報は圧倒的にGASが優勢です。
どういうことかというとGASではセルアクセスとかの関数はGoogle側より用意されているのですが、文字列とかはJSに備わっているものを使うようになっています。
なので文字列操作とかでわからない部分があったら「JS 文字列操作」みたいに調べればたくさん参考が出ます。
一方、VBAは文字列操作とかもMicrosoftで用意しているので調べるのが少し難しい感じですね。
「VBA 文字列操作」みたいにすれば出てはくるが言語自体の人口が多くはないと思うので、やってみた的なのは期待できない印象です。
正直、JS同様に文字列操作ができるだけでGASを選びます。
3. 無料で使える
言わずもがなですよね。
一方は有料でいい金額払って使うもので、一方は無料でいい感じに使えたら、そりゃ無料を選びますよね。
有料にしている分の良さがあることを否定はしませんがスクリプトで色々することを考えれば、圧倒的にGASです。
なにより、家でも勉強できるし趣味とかでスプレッドシート使うときに勉強が生かせるのがモチベになるから。
まぁ、どうせスプレッドシートで作ったものを範囲選択してエクセルにコピペしても大体いけるし、最終をエクセルにするとしても私はスプレッドシート一択です。
最後に
適当にVBAよりGASの方が好きなところを書いていましたが、1つだけデメリットがあります。
処理が遅い
これですね、VBAもそこまで早かった印象ないですがGASは割と遅いです。
まぁ、速度求めるならVBAも使わずに別プログラム作った方がいいのでは?と思ってしまうので、私は割り切って使っています。
速度面以外はGASかなーって感じですね。
メリット
- 癖が少ない
- ドキュメントがいい感じ
- 無料で使える
デメリット
- 処理が遅い
色々、言いましたが結論コレです。
無料最高!!ヒャッホゥ!
私からは以上です。