GAS 구글 스크립트 트리거 시간 설정 방법

구글 스크립트로 작성한 GAS를 자동으로 실행하게 하기 위해 트리거를 설정합니다.

하지만 트리거를 설정할 때 정확한 시간을 설정할 수 없습니다.

몇 시부터 몇 시 사이로 밖에 선택이 되지 않습니다.

트리거를 사용해 자동으로 실행할 시간을 분 단위까지 지정하기 위해서는 트리거 전용 함수를 준비해야 합니다.

우선을 자동으로 실행할 샘플용 구글 스크립트를 작성하겠습니다.

function getMemo() { 
  var ss = SpreadsheetApp.getActiveSpreadsheet(); 
  var copyss = ss.getSheetByName('시트1').getRange("A1"); 
   
  copyss.setValue("자동 실행"); 
}

 

스크립트를 실행하면 시트1 A1셀에 자동 실행이라는 문자열이 출력됩니다.

 

스크립트에 트리거를 설정해 매일 오후 1시에서 오후 2시 사이에 자동으로 실행 되도록 했습니다.

오후 1시에서 오후 2시에 실행이 되지만 몇 분에 실행이 되는지는 아무도 모릅니다.

실행이 끝나고 로그를 확인하던가 해야 합니다.

만약 매일 오후 1시 30분에 실행을 하고 싶은 경우에는 시간을 설정해 주는 함수를 통해 트리거를 실행하도록 하면 됩니다.

function setTrigger(){ 

  const time = new Date(); 
  time.setHours(13); 
  time.setMinutes(30); 
  ScriptApp.newTrigger('tiggerTest').timeBased().at(time).create(); 

}

 

setTrigger()라는 함수를 만들었습니다.

setTrigger()에는 시간을 설정하고 setMinutes()에는 분을 설정합니다.

newTrigger()에는 실행하고 싶은 함수를 작성하면 됩니다.

실제로 스크립트 처리가 작성되어 있는 함수는 tiggerTest()입니다.

즉, newTrigger()에 tiggerTest를 지정해 주면 됩니다.

실제로 작성한 구글 스크립트를 확인해보겠습니다.

 

실제로 작성한 스크립트는 tiggerTest()와 setTrigger()입니다.

setTrigger()를 작성했으면 트리거 설정 화면에서 시간을 지정합니다.

 

setTrigger() 함수에  실행할 함수와 시간을 지정해놨기 때문에 실제 트리거 추가 화면에서는 setTrigger()를 선택합니다.

그리고 setTrigger()에서 실행할 시간을 오후 1시 30분으로 지정했기 때문에 오후 1시 이전 시간을 선택합니다.

setTrigger()에서 설정한 시간보다 앞선 시간을 선택해 setTrigger()가 실행될 수 있도록 해주는 것입니다.

setTrigger()에 설정한 시간보다 앞선 시간이라면 언제든 괜찮습니다.

댓글