본문 바로가기
프로그래밍/프로젝트

소속팀 이름 자동화(w. apps script)

by 숙님 2024. 5. 24.
728x90

1. 현재 문제점 

- (현재 사용하는 고객 쿠폰 발급 시트에 쿠폰 발급 후) 소속팀을 매번 입력하는 번거로움 존재 

- 담당자 이름을 입력하면 알아서 소속팀을 입력하는 자동화 기능 개발 필요 

 

2. 해결 방안

- 구글 시트 들어가기 

1. 앱스스크립트 열기
2. 코드 작성
3. 트리거 설정

- 확장프로그램 - apps script에서 코드 작성 

- 트리거 설정 

function updateBColumnBasedOnC() {
  const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
  const sheets = spreadsheet.getSheets();
  const sheetNamePattern = /^\d{4}년 고객환불내역$/; // 0000년 고객환불내역 형식의 시트를 찾기 위한 정규 표현식

  sheets.forEach(sheet => {
    if (sheetNamePattern.test(sheet.getName())) {
      const cRange = sheet.getRange('C2:C' + sheet.getLastRow()); // C열의 범위를 가져옵니다.
      const cValues = cRange.getValues(); // C열의 값을 가져옵니다.

      cValues.forEach((row, index) => {
        let cValue = row[0]; // 현재 C열의 값
        let bValue = ''; // B열에 입력할 값

        if (cValue === '000' || cValue === '000') {
          bValue = '000팀';
        } else if (cValue) {
          bValue = '0002팀';
        } else {
          bValue = ''; // C열이 공란인 경우 B열도 공란으로 설정합니다.
        }

        // B열의 값을 설정합니다.
        sheet.getRange(index + 2, 2).setValue(bValue);
      });
    }
  });
}

 

3. 해결 후 

- 담당자 이름을 입력하면 자동으로 소속팀 입력됨 

 

4. 후기 

- 간단한 기능으로 향후 업무가 빨라질 것으로 예상

- 해당 시트에 다른 자동화 기능도 추가 예정 

댓글