2017-12-28 19 views
1

저는 특정 구를 입력 할 때 Google 시트에서 셀의 배경색을 변경하는 사람을 위해 빠른 코드를 작성하려고했습니다. 코드는 오류없이 잘 실행되지만 스프레드 시트에는 아무 것도 출력되지 않습니다. 어떤 도움이라도 훌륭 할 것입니다. 나는 일이 다시 작성한getActiveCell()은 Google 스크립트에서 저에게 맞지 않습니다.

function ChangeCellHighlight() { 

    //returning value of active cell 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheet =ss.getSheets()[0]; 
    var cell = sheet.getActiveCell(); 


    //typing "Hay" will trigger cell background color 
    if (cell == 'Hay') { color 
    cell.setBackgroundRGB(255, 0, 0); //red cell background   
    } 
} 
+1

@ coder-croc 완료. – carlosaicrag

답변

0

:

내가 가지고있는 코드입니다. getSheets() [0]을 사용하는 대신 getActiveSheet()로 변경하여 현재 사용중인 활성 시트를 의미합니다. 특정 것이면 getSheetByName ("SHEETNAME")으로 변경할 수 있습니다. 가장 중요한 IF 문장에서 'Cell'을 호출하면 셀을 가져 오지만 값은 가져 오지 않기 때문에 cell.getValue()를 추가했습니다. appscript에 저장된 함수 인 onEdit() 함수도 추가했습니다. 셀을 편집 할 때 셀 내에서 선언 된 함수를 호출합니다.

function ChangeCellHighlight() { 

     //Get Current Google Sheet, Get Active Sheet Tab. 
     var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); 
     //Get Active Cell. 
     var cell = ss.getActiveCell(); 
     //If clause - does cell == "Hay" 
     if(cell.getValue() == "Hay") { 
     //If YES change background to red. 
     cell.setBackground("red"); 
     } else { 
     //Anything else do nothing. 
     //Do nothing or you could have Logger.log("Cell not equal to Hay"); 
     } 
    } 
    //This will run every time an edit is made. 
    function onEdit(){ 
    ChangeCellHighlight(); 
    }