0

2010 년 3 월 29 일 Jason Hale은 스프레드 시트 커서 위치를 사용하여 작성중인 Javascript 앱의 전자 메일 주소를 선택하려고했습니다. http://productforums.google.com/forum/#!topic/apps-script/U10q44vptPU을 참조하십시오. 응답자는 getActiveSelection 및 그에 상응하는 getRowIndex/getColumnIndex 메소드를 제안했습니다. 불행히도, 그들은 Hale을 위해 일하지 않았고 2 년 후에 비슷한 응용 프로그램을 작성하려고 할 때 저에게 효과적이지 않았습니다. 커서의 위치는 getRowIndex 및 getColumnIndex에 영향을주지 않습니다. 이 메소드는 항상 1을 리턴하는데, 이는 쓸데없고 버그 일 것입니다. Google Apps에는 Python에서 제공하는 것과 같은 커서 서비스가 없습니다. 이 상황에서 유용 할 수있는 Google Apps가 제공하는 것을 찾은 사람이 있습니까?Google 스프레드 시트에서 Javascript 메서드를 사용하여 커서 행/열 가져 오기

+0

게시물 중 귀하의 질문에 대한 답변이 있습니까? 그렇다면 "틱"옵션을 사용하여 해당 응답을 대답으로 표시하십시오. 그렇지 않은 경우 질문을 수정하고 명확히해야 더 나은 답변을 줄 수 있습니다. –

답변

4

이 간단한 기능을 사용해 보셨습니까?

function getRCposition(){ 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var cell = ss.getActiveCell(); 
    var R = cell.getRow(); 
    var C = cell.getColumn(); 
    Browser.msgBox('Row = '+R+' and Col = '+C); 
    } 

는 나 같은 더 '유니버설'기능 :

function getposition(){ 
    var sh = SpreadsheetApp.getActiveSheet(); 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var range = ss.getActiveRange(); 
    var R = range.getRowIndex(); 
    var C = range.getColumnIndex(); 
    var W = range.getWidth(); 
    var H = range.getHeight(); 
    var A1not = range.getA1Notation(); 
    Browser.msgBox('Row = '+R+'/Col = '+C+' Width = '+W+'/Heigth = '+H+' A1 notation = '+A1not); 
    } 
5

다음 코드는 나를 위해 작동합니다. spreaadsheet에서 현재 위치의 행 번호를 묻습니다.

function onOpen() { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var menuEntries = [ {name: "Test1", functionName: "menuItem1"}]; 
    ss.addMenu("Tests", menuEntries); 
} 

function menuItem1() { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    Browser.msgBox("You have selected row " + ss.getActiveCell().getRow()); 
} 
+0

왜'var range = ss.getActiveCell();'변수를 만들고,'Browser.msgBox ("행에"+ ss.getActiveCell(). getRow()); 'range.getRow()'라고 말할 수 있습니다. – BadHorsie

+0

중복 된 코드가 제거되었습니다. –