2013-10-20 1 views
2

documentation에 따르면이라는 이름의 함수가 Spreadsheet 클래스에 있지만이 클래스는 정의되지 않은 것 같습니다.Speadsheet.getRangeByName이 정의되지 않았습니다.

function onEdit(e) { 
    if (e) { 
     var ss = e.source.getActiveSheet(); 
     Logger.log(ss.getName); 
     Logger.log(ss.getRange); 
     Logger.log(ss.getRangeByName); 
    } 
} 
// outputs: 
// function getName() {/* */} 
// function getRange() {/* */} 
// undefined 

가이 공식 문서 (스크린 샷) 모순 Spreadsheet 목적 이외의 다른 event.source.getActiveSheet() 반환 뭔가 때문에? 내가 이벤트의 소스에서 활성 시트에 이름 범위를 얻을 수있는 방법

enter image description here (https://developers.google.com/apps-script/understanding_events) 그런 경우

? 감사.

답변

2

var ss = e.source.getActiveSheet();을 수행하면 변수 ss이 스프레드 시트 유형이 아닌 시트 유형이므로 문제가됩니다. 방법 getRangeByName(name)은 스프레드 시트에 속합니다.

function onEdit(e) { 
    if (e) { 
     var ss = e.source; 
     var s = ss.getActiveSheet(); 
     Logger.log(s.getName); 
     Logger.log(s.getRange); 
     Logger.log(ss.getRangeByName); 
    } 
} 
// outputs: 
// function getName() {/* */} 
// function getRange() {/* */} 
// function getRangeByName() {/* */} 
:

는 다음 시도

관련 문제