|

앱스 스크립트에서 include를 사용해서 데이터 필터링하기

이 포스팅은 “구글 앱스 스크립트 101: 공짜로 만드는 업무 자동화 시스템” 책에 포함된 코드를 AI가 설명하도록 한 뒤에, 교정한 포스팅입니다. AI가 작성한 것을 수정하면 취소선을 표시하였습니다. 교정으로 추가하면 색상을 표시하였습니다.

목차

  1. 요약
  2. 코드
  3. 코드 설명
  4. 예제
  5. AI 프롬프트

요약

이 블로그 포스트에서는 Apps Script를 사용하여 Google Sheets에서 데이터를 필터링하는 방법을 살펴보겠습니다. 특정 기준에 따라 워크시트의 특정 열을 필터링하는 함수를 작성하고, 필터링된 데이터를 반환하는 방법을 배워보겠습니다.

코드

코드 설명

이 코드는 filterName이라는 함수를 선언합니다. 함수 내부에서는 활성 스프레드시트를 가져오고, getSheetByName 메소드를 사용하여 특정 시트를 가져옵니다.

getDataRange 메소드를 사용하여 시트의 데이터 범위를 가져오고, getValues 메소드를 사용하여 범위 내의 값들을 가져옵니다.

데이터 배열에 filter 메소드를 적용하여 두 번째 열(인덱스 1)에 ‘보미’라는 문자열이 포함된 행만 필터링합니다. 그리고 필터링된 데이터를 Logger.log 메소드를 사용하여 출력합니다.

include 에 대한 추가 설명을 AI에서 아래와 같이 받을 수 있습니다.

data.filter(row => row[1].includes('보미'))는 배열 data의 각 요소에 대해 두 번째 열의 값(이름)에 ‘보미’가 포함된 요소만 필터링하는 JavaScript 코드입니다. 이 코드는 배열의 filter() 메서드를 사용하여 조건에 맞는 요소들만 새로운 배열로 반환하는 것을 의미합니다.

여기서 사용된 화살표 함수 row => row[1].includes('보미')는 각 요소를 받아 해당 요소의 두 번째 열의 값을 가져와서 그 값이 ‘보미’를 포함하는지 여부를 판별하는 역할을 합니다.

각 부분의 설명:
data: 필터링할 배열입니다.
filter(): 배열의 메서드로, 주어진 함수를 각 요소에 적용하여 조건에 맞는 요소들로 이루어진 새로운 배열을 반환합니다.
row: 배열의 각 요소입니다.
row[1]: 각 요소의 두 번째 열의 값을 나타냅니다. JavaScript에서 배열 인덱스는 0부터 시작하므로, 두 번째 열은 인덱스 1에 해당합니다.
includes('보미'): 문자열의 메서드로, 주어진 문자열이 해당 문자열에 포함되어 있는지 여부를 검사합니다. 따라서 row[1].includes('보미')는 두 번째 열의 값에 ‘보미’가 포함되어 있는지를 검사합니다.

결과적으로 data.filter(row => row[1].includes('보미'))는 두 번째 열의 값이 ‘보미’를 포함하는 요소들만 필터링하여 새로운 배열로 반환하는 코드입니다.

예제

‘사원’이라는 컬럼을 포함하는 Google Sheets가 있다고 가정해봅시다. ‘John’이라는 문자열이 포함된 행만 데이터로 필터링하려고 합니다.

AI 프롬프트

Google Sheets의 특정 열을 주어진 기준에 따라 필터링하고, 필터링된 데이터를 로그로 출력하는 함수를 작성하세요. 기준은 함수에 매개변수로 전달되어야 합니다.

예제 사용법: filterColumn('Sheet1', 2, 'John')

예상 출력: ‘Sheet1’의 두 번째 열에 ‘John’이 포함된 행들의 배열.

구글 시트의 데이터를 가져와서 특정 열에 지정하는 문자가 들어있는지 확인하는 코드를 작성해줘.

Similar Posts