Googleスプレッドシートにメニューを追加

2019-03-18

Googleスプレッドシート上でプログラム(スクリプト)を実行するためには、こちらで紹介したとおり、シート上に実行ボタンを作成します。

Googleスプレッドシートのスクリプト作成から実行までの基本的な流れ
当ラボでは、誰もが無料で使うことができるGoogleスプレッドシートを使って様々なサイトから必要な情報の取得を仕組み化したツールを提供しています。今回は、Googleス...

これ以外にもスプレッドシートのメニューバーからスクリプトを実行することができます。

今回は、Googleスプレッドシートにメニューを追加して、そこからスクリプトを実行する方法を紹介します。

ポイント 今回作成するもの

メニューに「テスト」という追加メニューを追加し、ボタンを押すとメッセージが表示されるだけのものです。

ポイント スクリプトの紹介

今回作成するスクリプトはこちらです。

function onOpen(){
 //メニュー配列
  var myMenu=[
    {name: "テスト1", functionName: "test1"},
    {name: "テスト2", functionName: "test2"}
  ];
 
  SpreadsheetApp.getActiveSpreadsheet().addMenu("テスト",myMenu); //メニューを追加
 
}

function test1(){
  Browser.msgBox("こんにちは")
}


function test2(){
  Browser.msgBox("さようなら")
}

ポイント ポイント

(1)スクリプト名「onOpen()」

スクリプト名をこの名前にすると、起動時に実行されます(Windowsのスタートアップみたいなもの?)。ただし、この中で実行する内容にGmailほか外部へのアクセス許可が必要なものがある場合には、実行されないようです。
メニューが表示されない場合には、こちらで紹介したトリガー機能で「onOpen」スクリプトを起動時に実行するように設定してください。

Google スプレッドシート:定期的にプログラムを自動実行(GASトリガー機能)
当ラボでは、誰もが無料で使うことができるGoogleスプレッドシートを使って様々なサイトから必要な情報の取得を仕組み化したツールを提供しています。連載で「IMPORTFEE...

(2)addMenu

このスクリプトでは、「テスト」というメニューの中に「テスト1」「テスト2」というサブメニューが表示されます。

ポイント まとめ

今回は、Googleスプレッドシートにメニューを追加して、そこからスクリプトを実行する方法を紹介しました。こちらは、設定したファイルのどのシートからでもアクセスできるので、共通して使用するスクリプトでこちらに登録すると便利です。
いろいろお試しください。

Copyright(c) 2016 e-Shikumi-Labo All Rights Reserved.