スクリプトはユーザー インターフェース要素を追加することで、特定の Google サービスを拡張できる クリックすると Apps Script 関数が実行されます。最も一般的な例は Google ドキュメント、スプレッドシート、スライド、スプレッドシートで、カスタム メニュー項目からスクリプトを実行する スクリプト関数は、画像やスプレッドシートの画像を 作成する方法も学習します
Google ドキュメント、スプレッドシート、スライド、フォームのカスタム メニュー
Apps Script では、Google ドキュメント、スプレッドシート、スライド、フォームに新しいメニューを追加できます。各メニュー項目はスクリプトの関数に関連付けられます。(Google フォームでは、カスタム メニューに 編集者にのみ表示されるので、変更のためにフォームを開いた フォームが開き、回答が返されます)。
スクリプトでメニューを作成できるのは、ドキュメント、スプレッドシート、フォームにバインドされている場合のみです。ユーザーがファイルを開いたときにメニューを表示するには、
onOpen()
関数。
次の例は、1 つの項目を含むメニュー、ビジュアル セパレーター、別の項目を含むサブメニューを追加する方法を示しています。(Google スプレッドシートでは、
新しいバージョンを使用するには、
addMenu()
構文を使用し、サブメニューは使用できません)。ユーザーが
対応する関数で
alert ダイアログを示します。詳細情報
使用できるダイアログの種類については、
ダイアログとサイドバーのガイドをご覧ください。
function onOpen() {
var ui = SpreadsheetApp.getUi();
// Or DocumentApp, SlidesApp or FormApp.
ui.createMenu('Custom Menu')
.addItem('First item', 'menuItem1')
.addSeparator()
.addSubMenu(ui.createMenu('Sub-menu')
.addItem('Second item', 'menuItem2'))
.addToUi();
}
function menuItem1() {
SpreadsheetApp.getUi() // Or DocumentApp, SlidesApp or FormApp.
.alert('You clicked the first menu item!');
}
function menuItem2() {
SpreadsheetApp.getUi() // Or DocumentApp, SlidesApp or FormApp.
.alert('You clicked the second menu item!');
}
ドキュメント、スプレッドシート、プレゼンテーション、フォームには、次の内容を含むメニューを 1 つだけ含めることができます。
与えられます。同じスクリプトまたは別のスクリプトによって、同じスクリプトまたは別のスクリプト
以前のメニューが新しいメニューに置き換わります。ファイルの処理中はメニューを削除できません
が開いていますが、onOpen()
関数を記述してメニューをスキップできます。
特定のプロパティが設定されている場合は将来の値を返します。
Google スプレッドシートのクリック可能な画像や図形描画
Google スプレッドシート内の画像や図形描画に Apps Script 関数を代入することもできます。 スクリプトがバインドされている限り、 表示されます。下の例は、この設定方法を示しています。
- Google スプレッドシートで、メニュー項目の [拡張機能] > を選択します。 Apps Script を使用して、 スプレッドシートにバインドされているスクリプトです。
スクリプト エディタ内のコードを削除して、以下のコードを貼り付けます。
function showMessageBox() { Browser.msgBox('You clicked it!'); }
スプレッドシートに戻って画像や図形描画を挿入するには、 挿入 >[画像] または [挿入] >図形描画。
画像や図形描画を挿入したら、それをクリックします。小さなプルダウン メニュー セレクタが表示されます。クリックして スクリプトを割り当てる。
表示されたダイアログ ボックスに、Apps Script 関数の名前を入力します。 かっこなしで実行します(この場合は
showMessageBox
)。 [OK] をクリックします。画像または図形描画をもう一度クリックします。関数が実行されます。