【作ってみた】GASでGoogleスプレッドシートのセルのクリアボタン|大阪のホームページ制作会社 SmileVision

社員ブログ 【作ってみた】GASでGoogleスプレッドシートのセルのクリアボタン

前回は、条件付き書式を書きまくって、四則演算の答え合わせがすぐできる100マス計算表を作成しました。 ここで100マス計算表についてはおわりにしよう…と、思ったその矢先、私はGoogle Apps Script というものを見つけました。    

Google Apps Scriptとは?

 
Google Apps Script(通称GAS)は、Googleが提供する11のサービスをクラウド上でスクリプトを実行することで操作できるサービスです。スクリプトの言語は、JavaScriptをベースとしています。
(http://uxmilk.jp/25775より引用) なにこれ知らなかった。 使えるようになったらきっと作れるものの幅が広がりますね! というわけで今回はGASを使って、セルの値をクリアにするボタンを追加しようと思います。  

クリアボタンの作り方

  1.まずボタンを描きます。メニューの「挿入」→「図形描画」を選択します。図形描画画面が出てきたら、好きなようにボタンを描いてください。 クリアボタン1_1 クリアボタン1_2 こんな感じです。 クリアボタン1_3 2.メニュー「ツール」→「スクリプトエディタ」を開きます。 クリアボタン2_1 すると、このような画面が出てきます。ここにスクリプトを書いていきます。 クリアボタン2_2 3.スクリプトを書きます。デフォルトで書かれている「function myFunction(){ }」の中括弧{ }の中に以下のスクリプトを追加し、メニュー「ファイル」→「保存」をします。 try{ var sheet = SpreadsheetApp.getActiveSheet(); sheet.getRange(‘B2:K11’).clearContent(); }catch(e){ Browser.msgBox(e); } クリアボタン3 try〜catch文は、エラーの発生をキャッチするものです。try{ }の中にエラーをキャッチしたい処理を書いて、エラーを検出するとcatch{ }内の処理が実行されます。エラーが無ければcatch{ }内の処理は無視されます。 (参考:http://tonari-it.com/gas-error-try-catch/#trycatch)   Browser.msgBox()は、( )内のメッセージをアラートとして表示させるものです。「Browser」というオブジェクトの「msgBox」というメソッドというらしいですが…後々勉強します(> <) (参考:http://libro.tuyano.com/index3?id=623009&page=4)   [Sheetオブジェクト].getRange(‘セルの範囲’).clearContent();は、指定した範囲のセルの値をクリアするものです。 clearContent()は値と関数はクリアされ、書式は保持しますが、 clear()の方は書式もクリアしてしまうみたいで、こっちを使うと元々ひいていた罫線まで消えてしまうので注意してください。 (参考:http://www.bmoo.net/archives/2012/03/313092.html)   これで「B2~K11セルの値をクリアにする(エラーが出ればエラーをアラートで表示する)」処理が書けました。 この処理を、「クリア」ボタンが押されたときに実行するようにします。 4.「クリア」ボタンに③で書いたスクリプトを割り当てます。ボタンに上にある[▼]をクリック→「スクリプトの割り当て」を選択します。 クリアボタン4_1 割り当てるfunction名を入力して[OK]をクリックします。今回はデフォルトで書かれていたものに追加したのでmyFunctionと入力します。 クリアボタン4_2 さいごに、「クリア」ボタンをクリックすると、無題のプロジェクトが「Google ドライブのスプレッドシートの表示と管理」について許可をリクエストしてくるので許可をしてください。 これでGASを使用した、セルの値をクリアにするボタンの完成です! 使えたらすごく便利! 今はこんな簡単なものしか作れないですが、使いこなせるようにこれからもたくさん触ってみようと思います!]]>

ABOUT ME
おいぬ
■部署 開発部 ■スペック(Level、身長、座高、属性、資格) 闇属性 ■入社年 2016年 ■趣味 音楽、工作、踊ってみた、たべる ■座右の銘 百敗不屈 ■ひとこと おなかすいた