【GAS】独自メニューを作ってスクリプトを実行

珍しくGoogle Apps Scriptの話です。

スクリプトの実行結果

サンプルコード

//サンプル
//メニュー追加
function onOpen(){
    
  //Uiクラスをインスタンス化
  var ui = SpreadsheetApp.getUi()
  
  //Uiクラスからメニューを作成
  var menu = ui.createMenu('追加メニュー')
  
  //メニューをアイテムに追加|2つ目の引数には
  menu.addItem('集計', 'myFunction')
  
  //メニューをアイテムに追加②
  menu.addItem('アイテム2', 'puttingMethod')
  
  //アイテム2の下に区分線を引く
  menu.addSeparator();   
  
  //サブメニューを追加
  menu.addSubMenu(                           
    
    // Uiクラスからメニューを作成し、さらにメニューにアイテムを追加する
    ui.createMenu("サブメニュー").addItem("サブアイテム1", "moveto") 
  )
  
  //メニューをUiクラスに追加
  menu.addToUi();
}  

コードの説明

Uiクラスを取得 -> メニューを作成 -> アイテムの追加を行うという流れなので、
それさえ覚えておけば問題なさそう。
※サブメニューの追加もaddSubMenuを使うだけで基本的には同様

※参考 古いメニュー追加方法

今は推奨されていませんが、下記のやり方でもメニュー追加はできます。
ただ、サブメニューが追加できなかったりするので、基本的には上記やり方で十分なはずですが参考までにメニューが追加できるコードは載せておきます。
※複数のメニューは配列を作って追加することになります。

//サンプル
//古い方法
function onOpen(){
  
  //スプレッドシートと現在のシートを取得
  var spreadSheet = SpreadsheetApp.getActiveSpreadsheet()
  var sheet = spreadSheet.getActiveSheet();
    
  //メニューの配列を作成する
  var myMenu=[
    {name: "集計", functionName: "myFunction"},{name: "集計(B)", functionName: "myFunction"},{name: "行削除", functionName: "myFunction"} ]
  
  sheet.addMenu("集計",myMenu); //メニューを追加
  
}

お知らせ

ヒヨコ歩数計という歩きながらヒヨコが育っていくアプリを作って、いろんな方に結構使ってもらっています。
RealmSwift, Admobの動画・インステ・バナー広告、UICollectionView、iOS-Charts、UITableViewを使用しているので、是非ご利用ください!