Google Apps Script로 메뉴 만들어 스크립트 실행하기
Apps Script로 스크립트 작성하기
스크립트는 아래와 같이 AppsScript에서 작성할 수 있습니다.
function showAlert() {
SpreadsheetApp.getUi().alert("showAlert");
Logger.log("Call showAlert");
}
실제 스크립트를 메뉴를 만들어서 연결 시켜보겠습니다.
상단 메뉴에 버튼 만들기
Google Apps Script에서 제공하는 onOpen()을 이용합니다.
Google Sheets가 열릴 때 마다 실행 되는 트리거 입니다.
방법1
.createMenu('상위메뉴 이름')
.addItem('하위메뉴 이름', '실행될 함수명')
function onOpen() {SpreadsheetApp.getUi().createMenu("상위메뉴").addItem("하위메뉴1", "menuFun1").addToUi();}function menuFun1() {Logger.log("하위메뉴1");SpreadsheetApp.getUi().alert("하위메뉴1");}function menuFun2() {Logger.log("하위메뉴2");SpreadsheetApp.getUi().alert("하위메뉴2");}
![상단 메뉴에 버튼 만들기 결과 상단 메뉴에 버튼 만들기 결과](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhagM3cOI1vFui34bbCCr8Ew3YbyWUqq9zF3GZULkazN99D-pL3rAtL9RBERud5saS54SHDwW0sEcMSY-vEeFwJYN5QVVipaQ91RR1MYGvC-l-fX03eYkxJbzMdQwjfd383rYqlc55geurP5ZAwHUJLuJxZv0iZhwJksSjtiDLGCO-2yi94VXPpwIk7XZKb/w640-h200-rw/a3.png)
.addSeparator()를 사용하여 추가해 줍니다.
function onOpen() {SpreadsheetApp.getUi().createMenu("상위메뉴").addItem("하위메뉴1", "menuFun1").addItem("하위메뉴2", "menuFun2").addSeparator().addItem("하위메뉴3", "menuFun3").addToUi();}function menuFun1() {Logger.log("하위메뉴1");SpreadsheetApp.getUi().alert("하위메뉴1");}function menuFun2() {Logger.log("하위메뉴2");SpreadsheetApp.getUi().alert("하위메뉴2");}function menuFun3() {Logger.log("하위메뉴3");SpreadsheetApp.getUi().alert("하위메뉴3");}
![상단 메뉴에 버튼 만들기 결과 상단 메뉴에 버튼 만들기 결과](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWJ1Z1D93hlbjrjJY9Mtc0lVsL6qcZgomCK33ODBvj7VgWm17y6D4iMakur3MqjWVYJ3gektO2elyLBKfvJ7ozfUWDFjPngm_eruAbbVBtY0KRsLn1Vv5vAHPXEFL9C4JlplUVqBJsc5BXpTkQ5RgTb2_6NfmC4w--4uEoy3Q39K1mTwv6IRXzDNTtiusu/s16000-rw/a4.png)
방법2
var sheet = SpreadsheetApp.getActiveSpreadsheet();
var entries = [
{
name : "하위메뉴 이름",
functionName : "실행될 함수명"
},
{
name : "하위메뉴 이름",
functionName : "실행될 함수명"
},
{
name : "하위메뉴 이름",
functionName : "실행될 함수명"
}
];
sheet.addMenu("상위메뉴 이름", entries);
function onOpen() {var sheet = SpreadsheetApp.getActiveSpreadsheet();var entries = [{name : "하위메뉴1",functionName : "menuFun1"},{name : "하위메뉴2",functionName : "menuFun2"},{name : "하위메뉴3",functionName : "menuFun3"}];sheet.addMenu("상위메뉴", entries);}function menuFun1() {Logger.log("하위메뉴1");SpreadsheetApp.getUi().alert("하위메뉴1");}function menuFun2() {Logger.log("하위메뉴2");SpreadsheetApp.getUi().alert("하위메뉴2");}function menuFun3() {Logger.log("하위메뉴3");SpreadsheetApp.getUi().alert("하위메뉴3");}
![상단 메뉴에 버튼 만들기 결과 상단 메뉴에 버튼 만들기 결과](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKIDu7fYONK78BZUG2h4kNphzQ5YwQBfMKXMjWDcfvzRbc-7h3PnNZ8PPf52w9yShVpsnBXfXCiImwgqv6oqgtp9UyvOJgJWz99yR6yU98yR19GTGMHBE9jgzgXaWsHy_OkQNeq_IASWpNbJvJ8fXI4xcnxVQ9LDT75k6jxcRa7o1A0ih8pAHWqQysUBJL/s16000-rw/a5.png)