Googleスプレッドシートのスクリプト実行方法とボタンの実行方法
Googleスプレッドシートのスクリプトエディタ機能の使い方にお困りでしょうか?ここではスクリプトの実行方法とスプレッドシートにボタンを作成してスプレッドシート上で処理を実行する方法をご紹介していきます。
筆者もつい最近スプレッドシートのスクリプトエディタを使うようになったばかりですが、これから勉強して使っていくであろうあなたに少しでもお役に立つようにこの記事でシェアしていきます。
Googleスプレッドシートでスクリプトを開く方法
まずはGoogleのスプレッドシートを開きます。メニューバーのツール>スクリプトエディタの順にクリックします。
すると、別タブに以下のようにスクリプトエディタが開きます。
これでGoogleスプレッドシートのスクリプトが開きました。次はスクリプトを実行する方法です。
Googleスプレッドシートのスクリプトを実行する方法
関数が1つの場合と複数の場合について紹介していきます。
function関数が1つの場合
スクリプトエディタを開いたら、function関数内に実行する処理を書きます。ツールバーの保存もしくは▶の実行ボタンをクリックします。
そうするとこんな画面が出てきます。
「プロジェクト名を編集してください」と表示されるので変更します。「無題のプロジェクト」のままで良い場合はそのままで大丈夫です。プロジェクト名はあとからでも変更は可能です。あとはOKをクリックすれば、スクリプトが実行されます。次はfunction関数が複数ある場合のスクリプトの実行方法です。
function関数が複数の場合
コードを書いていると関数が複数になりますよね。処理を分けて書きたいときや単体で実行するかテストしてみたいときなど。そんなときは関数名を選択するだけで実行したい処理だけを確認することが可能です。
以下のように複数の関数を用意します。▶で実行する前に実行したい関数名を選択します。あとは▶で実行するだけで完了です。
以上が、Googleスプレッドシートをスクリプトエディタ上で実行する方法です。では次はGoogleスプレッドシート上でボタンを押して実行する方法を紹介していきます。
Googleスプレッドシートにボタンを作成してスクリプトを実行する方法
手順としては大まかに2つに分かれるので1つずつ紹介していきます。まずはスプレッドシート上にボタンを作成し設置する方法です。
Googleスプレッドシート上にボタンを作成・設置する方法
スプレッドシートを開いたらメニューバーの挿入>図形描画をクリックします。
すると、別ウインドウが表示され、図形を作成できるようになります。以下のように赤枠をクリックしていき、お好きな図形を選択します。今回はボタンを作成するのでボタンっぽい図形を選択します。
以下のようなボタンができました。「実行ボタン」はテキストで入力しています。テキストはお好きな文字で入力してください。良ければ赤枠の「保存して終了」をクリックします。
「保存して終了」をクリックすると、作成したボタンがGoogleスプレッドシート上に表示されます。
サイズや位置は好きなように変更できます。色や文字、形を変更したい場合は図形(ボタン)を右クリックして編集することが可能です。
これでGoogleスプレッドシート上にボタンを作成・設置することができました。次は作成したボタンを押せば処理を実行できる方法を紹介します。
作成したボタンに実行機能をもたせる方法
Googleスプレッドシート上にボタンを作成したら、あとはボタンに実行機能をもたせるだけです。図形(ボタン)をクリックしてください。すると青枠で囲われてサイズを変更できるようになります。図形の右上には縦に「︙」(3つの点)が表示されているはずなので、そこをクリックします。
「︙」をクリックすると「スクリプトを割り当て」と表示されるのでこれをクリックします。
別ウィンドウが表示されるので、赤枠に自分で作成したfunctionの関数名を入力します。今回作成した関数は「myFunction」と「test」なので、ここでは「test」を入力することにします。これでOKを押すと作成したボタンに実行機能をもたせることができます。
関数名を入力する際は入力のミスを防ぐため、手入力ではなくスクリプト上の関数名をコピーして貼り付けることをおすすめします。コードは合っているはずなのに、スクリプト割当で入力ミスをしていてどこが間違っているのかわからずに無駄に時間を費やしたことが筆者はあります。同じミスをしないように気をつけてください。あとは作成した実行ボタンを押すだけで実行処理してくれるようになります。
Googleスプレッドシートのスクリプトをスマホから実行する
これまでは基本的にPCで操作をする前提でお伝えしてきましたが、スマホから操作したい場合もあると思います。そこで次はスマホでの実行方法についてお伝えしていきます。以下、iOSで実施した内容となりますので、Android端末をご利用の方は参考程度に捉えてください。
スクリプトをスマホから編集する
スマホからGoogleスプレッドシートのスクリプトを開いて編集したいという方も少なからずおられるようです。外出時や緊急時などでPCを持っていない場合もありますからね
。
先に結論からお伝えしておきますが、スマホからはPCと同様の操作はできません。厳密にはGoogleスプレッドシートのスマホ版のアプリを使用することになるのですが、このスマホアプリはPC版の簡易版と考えると良いでしょう。簡易版のためスマホアプリではいくつかの制限があるということです。
GoogleスプレッドシートのPC版とスマホアプリ版でできることの違いについてはここでは省略しますが、スマホアプリ版はスプレッドシートからスクリプトエディタを開くことができないのが現状です。
ではスマホからスクリプトの編集はできないのかというと、そんなことはありません。あまりスマートなやり方ではないかもしれませんが、PC上でスクリプトエディタを開き、そのURLをコピペしてスマホから開くことが可能となります。つまり、Googleスプレッドシートのスマホアプリを介さずに直接スクリプトのURLに飛ぶ、ということです。
このとき、Googleのアカウントに注意してください。PC上でも複数のアカウントを持っている場合は注意しなければなりませんがスマホ上でも同様です。Googleにログインしているアカウントとスクリプトを開くアカウントは同じでないと開くことができません。
同じアカウントになっていることが確認できたら無事にスマホからスクリプトを開くことが可能となります。スクリプトエディタの画面はPCとスマホに違いはないためPC上と同じように編集と実行が可能です。
ただし、PCと同じように操作をすることは難しいでしょう。編集自体は同じようにできますが、操作が難しいのです。
例えばコードを編集するためにカーソルを合わせようとしても、思い通りの箇所にカーソルが合わない、ということが起こります。画面を拡大すればこの問題は解決するのではないかと思われそうですが、解決しません。コードの文字の大きさと行の幅が一致していないことが原因だからです。また、『お使いのブラウザのバージョンはサポートが終了しました。サポートされているブラウザにアップグレードしてください。』と表示される場合もあります。これらは環境によって変わることもあるので、ご自身でお確かめください。
スマホからスクリプトエディタのURLを直接開き、編集と実行が可能だとお伝えしました。では次はトリガーを利用してスマホから処理を実行する方法についてお伝えします。
トリガーを利用する
Googleスプレッドシートのスクリプトにはトリガーの設定ができます。このトリガーを利用してスマホから処理を実行するようにしてみましょう。トリガーの設定はスクリプトさえ開いていれば、PCからでもスマホからでも設定が可能です。
『実行する関数』には実行したい関数を、『イベントのソース』にはスプレッドシートを選択します。次が肝心で『イベントの種類を選択』とありますが、起動時、編集時、変更時、フォーム送信時の4つがあります。
起動時トリガーに設定した場合、Googleスプレッドシートのスマホアプリを起動しても実行されない可能性があります。環境により異なるのかもしれませんが、iOSの場合は実行されませんでした。
そのほかの編集時や変更時をトリガーに設定した場合はスマホアプリからでも実行できます。フォーム送信時については確認できていません。
まとめると、トリガーを利用する場合は事前にトリガーを設定しておき、Googleスプレッドシートをスマホアプリで開き、編集もしくは変更をした際にトリガーが実行されるように設定しておくことで関数の処理が実行されます。
編集という観点から見ると、トリガーを利用することは趣旨から背きますが、処理を実行させるだけならスマホアプリからでも可能ということです。
スマホアプリから実行ボタンは実行できない
さて、スマホからスクリプトを編集し実行することやスプレッドシートのスマホアプリを使ってトリガーを設定すれば処理を実行することが可能だとお伝えしてきましたが、もう1点、お伝えすることがあります。それはこの記事でも紹介している「ボタンで実行する方法」についてです。
作成したボタンを押すことで関数の処理が実行可能だと解説しましたが、これはあくまでもPC上での話です。
ボタンを作成し、関数の割当をした状態のスプレッドシートをスマホアプリから開いてみると、スマホの画面上はしっかりとボタンも表示されます。しかし、スマホからではボタンを押しても(タップしても)なにも反応せず、実行されません。
どうやらこのボタンの機能はPC上でのみ操作が可能なようです。スマホアプリからはボタンは実行できないことは覚えておきましょう。
スマホからできること【編集・実行】のまとめ
スマホからできることをまとめます。
スクリプトは直接URLを叩くと開くことが可能で、編集、トリガーの設定、実行が可能。ただし、編集作業は難ありのためスマホから編集するのは不向き。
スプレッドシートはスマホアプリから開くことが可能。編集は制限が多く、やりたいことが実現できない可能性が高い。スプレッドシートのスマホアプリからスクリプトを開くことはできない。また、スクリプトを割り当てたボタンも押せないため、処理を実行することができない。
以上がGoogleスプレッドシートとスクリプトをスマホから編集、実行する際のまとめとなります。ここに記した内容はそれぞれの端末や環境、さらにはGoogle側のアップグレードなどによって変化する可能性があります。上記の内容は参考程度にとどめ、実際にご自身で確かめることを推奨します。
まとめ
Googleスプレッドシートのスクリプト実行方法とスプレッドシート上にボタンを作成し実行する方法について紹介してきました。さらに追記としてスマホからの編集や実行についてもお伝えしました。ここで紹介した内容はGASの最初の段階で、一度行えばすぐに覚えられる内容ですが、この段階でつまずいてしまうとドロップアウトしてしまいやすいので、丁寧にわかりやすくを心がけて紹介しました。この記事がお役に立てれば幸いです。