【GAS】SpreadSheet ClassのaddMenuメソッドの使い方
この記事では、Google Apps Script(GAS)のaddMenuメソッドについて解説します。
addMenuメソッドを使うことで、スプレッドシートのメニューバーにカスタムメニューを追加し、スクリプトの機能を簡単に利用できるようになります。
addMenuメソッドの構文とパラメータ
addMenuメソッドの基本的な構文は以下の通りです
SpreadsheetApp.getUi()
.createMenu('メニュー名')
.addItem('アイテム名', '関数名')
.addToUi();
この構文では、まずcreateMenuメソッドでメニューを作成し、addItemメソッドでメニューに項目を追加し、最後にaddToUiメソッドでUIにメニューを追加します。
function onOpen() {
const ui = SpreadsheetApp.getUi();
ui.createMenu('カスタムメニュー')
.addItem('スクリプトを実行', 'myFunction')
.addToUi();
}
function myFunction() {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
const range = sheet.getRange('A1');
range.setValue('Hello, World!');
}
この例では、スクリプトを実行するとメニューバーに「カスタムメニュー」というメニューが追加され、その下に「スクリプトを実行」という項目が表示されます。
ユーザーがこの項目をクリックすると、myFunction関数が実行され、現在のスプレッドシートのA1セルに「Hello, World!」というテキストが入力されます。
複数のメニュー項目の追加
addMenuメソッドを使用して、複数のメニュー項目を一度に追加することができます。
これにより、複数の関数やアクションを含むメニューを簡単に作成できます。
以下は、複数のメニュー項目を追加する例です
function onOpen() {
const ui = SpreadsheetApp.getUi();
ui.createMenu('メインメニュー')
.addItem('サブメニュー1', 'submenu1')
.addItem('サブメニュー2', 'submenu2')
.addToUi();
}
function submenu1() {
// サブメニュー1の処理
}
function submenu2() {
// サブメニュー2の処理
}