スプレッドシートの画面からスクリプトを実行する一番簡単な方法は、スプレッドシート上のメニューから実行できるようにする方法です。
まず、スプレッドシートを新規作成してから、スクリプトエディタを起動し、以下のスクリプトを記述します。
function onOpen() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var menuEntries = [{name: "実行", functionName: "myFunction"}];
ss.addMenu("拡張", menuEntries);
}
function myFunction() {
Browser.msgBox("Hello, World!");
}
このスクリプトを保存し、スクリプトエディタも閉じます。
更に、スプレッドシートも保存し、スプレッドシートの画面も閉じます。
一旦閉じたスプレッドシートを開くと「拡張」メニューが追加されます。
【注意】追加したメニューが実際に表示されるまで若干の間があるのですが、それは大目に見てあげましょう。
「拡張」メニューから「実行」を選択すればメッセージボックスが表示されます。
このスクリプトのポイントは、プレッドシートを開いた時に呼ばれるonOpen関数 です。この名前で関数を作っておけば、スプレッドシートが開いた時に自動的に実行される仕組みになっています。そのonOpen関数の中でメニュー用の配列を作成し、現在開いているスプレッドシートに対してaddMenuメソッドを使ってメニューを追加します。メニューが選択されるとmyFunction関数が呼ばれ、メッセージボックスが表示されます。
【参考にしたサイト】
Google Code > Tutorial: Defining Spreadsheet Menus
http://code.google.com/intl/ja/googleapps/appsscript/articles/defining_menus.html