[카테고리:] 실무 자동화

  • 엑셀 매크로로 반복 업무 자동화하기: VBA 코드와 실행 전후 비교까지

    엑셀 매크로로 반복 업무 자동화하기: VBA 코드와 실행 전후 비교까지

    매달 반복하는 엑셀 작업, 매크로로 줄이는 방법

    월말마다 부서별 실적을 취합하고 금액 열에 쉼표를 넣은 뒤, 제목 행을 강조하고 합계 금액을 확인하는 업무가 있다고 가정해 보겠습니다. 데이터가 20행이라면 금방 끝나지만, 500행이 넘는 자료를 매달 같은 방식으로 정리한다면 작업 시간이 늘어나고 서식을 빠뜨릴 가능성도 커집니다.

    이럴 때 활용할 수 있는 기능이 엑셀 매크로입니다. 매크로 기록 기능으로 반복 동작을 저장할 수 있고, VBA 코드를 사용하면 데이터의 마지막 행을 찾아 여러 행에 같은 서식을 적용하거나 예상하지 못한 합계 행을 검사하는 작업까지 자동화할 수 있습니다.

    이번 글에서는 테스트용 실적 자료를 기준으로 매크로 기록부터 VBA 실행, 결과 검증, 오류 예방까지 직접 따라 해 보겠습니다. 실제 회사 자료 대신 가상의 데이터를 사용하므로 업무 환경에 영향을 주지 않고 연습할 수 있습니다.

    1. 자동화할 작업을 먼저 정하기

    이번 예제에서는 부서별 월간 실적 자료를 정리합니다. 엑셀 시트의 A열부터 D열까지 다음과 같이 구성합니다.

    부서 담당자 건수 금액
    영업1팀 담당A 12 1250000
    영업2팀 담당B 8 980000
    관리팀 담당C 15 2100000
    영업3팀 담당D 6 750000

    1행은 열 제목이며, 2행부터 실제 데이터가 시작됩니다. 이 자료를 자동화할 때 목표는 다음과 같습니다.

    • 1행의 제목을 굵게 표시하고 배경색을 적용합니다.
    • D열의 금액에 천 단위 구분 기호를 적용합니다.
    • A:D 범위에서 실제 데이터의 마지막 행을 찾습니다.
    • 마지막 행에 합계가 포함되어 있으면 임의로 서식을 적용하지 않고 중단합니다.

    여기서 주의할 점은 합계 행이 항상 C열에 있는 것은 아니라는 사실입니다. A열에 ‘합계’라고 표시되거나 D열에 ‘총계’가 들어갈 수도 있습니다. 따라서 특정 셀 하나만 검사하는 코드보다 A 범위 전체를 살펴보는 편이 안전합니다.

    2. 매크로 기록 기능으로 반복 동작 저장하기

    먼저 코드를 작성하지 않고도 자동화의 기초를 익힐 수 있는 매크로 기록 기능을 사용해 보겠습니다.

    1단계. 매크로 기록 메뉴 표시하기

    엑셀에서 테스트용 통합 문서를 열고 다음 순서로 진행합니다.

    1. 상단 메뉴에서 ‘파일 → 옵션 → 리본 사용자 지정’으로 이동합니다.
    2. 오른쪽 목록에서 ‘개발 도구’를 선택하고 확인합니다.
    3. ‘개발 도구 → 매크로 기록’을 클릭합니다.
    4. 매크로 이름에 FormatHeader를 입력합니다. 이름에 공백은 넣지 않습니다.
    5. 매크로 저장 위치는 현재 통합 문서를 선택합니다.

    엑셀 버전에 따라 메뉴 이름이나 배치가 조금 다를 수 있습니다. 매크로를 기록하는 동안에는 실제로 수행하는 동작이 그대로 저장되므로 불필요한 클릭은 피하는 편이 좋습니다.

    2단계. 제목 행 서식 적용하기

    기록이 시작되면 A1을 선택하고 다음 작업을 수행합니다.

    1. 글꼴을 굵게 설정합니다.
    2. 제목 행에 연한 배경색을 적용합니다.
    3. 텍스트를 가운데 정렬합니다.
    4. ‘개발 도구 → 기록 중지’를 누릅니다.

    이제 FormatHeader 매크로를 실행하면 기록한 제목 행 서식이 다시 적용됩니다.

    다만 이 매크로는 제목 행을 꾸미는 동작만 저장합니다. D2 한 셀의 서식을 기록했다면 다른 금액 셀까지 자동으로 처리하지는 않습니다. 전체 데이터에 같은 서식을 적용하려면 반복 범위를 지정하거나 VBA로 마지막 행을 찾아 처리해야 합니다.

    3단계. 금액 전체에 서식을 기록하려면

    금액 열 전체를 대상으로 기록하려는 경우에는 기록을 시작한 뒤 D2부터 마지막 데이터 행까지 범위를 선택합니다. 예를 들어 데이터가 5행까지 있다면 D2를 선택하고 셀 서식에서 숫자 형식을 사용자 지정 #,##0으로 설정합니다.

    기록을 중지한 뒤 실행하면 해당 범위에 서식이 적용됩니다. 단, 기록 당시 선택한 범위가 고정되어 있다면 다음 달에 데이터가 추가되어도 새로운 행까지 자동으로 확장되지 않을 수 있습니다.

    이 한계를 해결하는 방법이 다음 단계의 VBA 자동화입니다.

    엑셀 화면에서 데이터 범위를 선택하고 반복 서식을 적용하는 작업 장면

    3. VBA로 마지막 행까지 자동 처리하기

    VBA는 엑셀의 작업을 코드로 지정하는 방식입니다. 이번에는 A 범위에서 마지막 데이터 행을 찾고, 합계 행이 발견되면 작업을 중단하도록 만들겠습니다.

    1단계. 테스트 파일을 매크로 사용 통합 문서로 저장하기

    먼저 원본과 분리된 테스트 파일을 준비합니다.

    1. ‘다른 이름으로 저장’을 선택합니다.
    2. 파일 형식을 ‘Excel 매크로 사용 통합 문서 (*.xlsm)’로 지정합니다.
    3. 파일 이름을 monthly_report_test.xlsm으로 저장합니다.
    4. Alt+F11을 눌러 VBA 편집기를 엽니다.
    5. ‘삽입 → 모듈’을 선택합니다.

    아래 코드를 새 모듈에 붙여 넣습니다.

    Option Explicit
    
    Sub FormatMonthlyReport()
    
    Dim ws As Worksheet
    Dim lastCell As Range
    Dim lastRow As Long
    Dim r As Long
    Dim c As Long
    Dim cellText As String
    
    Set ws = ActiveSheet
    
    ' A:D 범위에서 마지막으로 사용된 셀 찾기
    Set lastCell = ws.Range("A:D").Find( _
    What:="*", _
    After:=ws.Range("A1"), _
    LookIn:=xlFormulas, _
    LookAt:=xlPart, _
    SearchOrder:=xlByRows, _
    SearchDirection:=xlPrevious, _
    MatchCase:=False)
    
    ' 제목만 있거나 시트가 비어 있으면 중단
    If lastCell Is Nothing Then
    MsgBox "A:D 범위에 데이터가 없습니다.", vbExclamation
    Exit Sub
    End If
    
    lastRow = lastCell.Row
    
    If lastRow < 2 Then
    MsgBox "제목 아래에 처리할 데이터가 없습니다.", vbExclamation
    Exit Sub
    End If
    
    ' A:D의 마지막 행에서 합계 여부 확인
    For c = 1 To 4
    cellText = Trim(CStr(ws.Cells(lastRow, c).Value2))
    
    If InStr(1, cellText, "합계", vbTextCompare) > 0 _
    Or InStr(1, cellText, "총계", vbTextCompare) > 0 _
    Or InStr(1, cellText, "소계", vbTextCompare) > 0 Then
    
    MsgBox "마지막 행에 합계·총계·소계 표시가 있습니다." & _
    vbCrLf & "서식을 적용하지 않았습니다.", vbExclamation
    Exit Sub
    End If
    Next c
    
    ' 제목 행 서식
    With ws.Range("A1:D1")
    .Font.Bold = True
    .Interior.Color = RGB(221, 235, 247)
    .HorizontalAlignment = xlCenter
    End With
    
    ' 금액 열 전체에 천 단위 구분 기호 적용
    ws.Range("D2:D" & lastRow).NumberFormat = "#,##0"
    
    MsgBox "서식 적용 완료: 2행부터 " & lastRow & "행까지", vbInformation
    
    End Sub

    2단계. 코드가 실제로 처리하는 범위 확인하기

    이 코드는 마지막 행을 찾을 때 A 범위만 검색합니다. E열 이후의 데이터는 마지막 행 판별에 사용하지 않습니다. 따라서 실제 업무 자료가 E열까지 이어진다면 검색 범위를 그 구조에 맞게 수정해야 합니다.

    합계 검사 역시 A의 마지막 행에 있는 셀을 대상으로 합니다. 마지막 행의 어느 열에든 ‘합계’, ‘총계’, ‘소계’라는 문구가 있으면 작업을 중단합니다. 이 방식은 합계 행의 위치가 C열로 고정되지 않은 자료에도 대응합니다.

    다만 합계 행이 데이터 중간에 있거나, 마지막 행에 합계 문구 없이 숫자만 들어 있다면 이 검사는 이를 확실하게 판별하지 못합니다. 이번 예제에서는 합계 행이 마지막에 있고 위의 표시 문구를 포함한다는 업무 규칙을 전제로 합니다.

    또한 이 코드는 데이터 내용을 정렬하거나 삭제하지 않습니다. 제목 행 서식과 D열의 숫자 표시 형식만 변경합니다.

    3단계. 매크로 실행하기

    1. VBA 편집기를 닫고 엑셀로 돌아옵니다.
    2. Alt+F8을 누릅니다.
    3. FormatMonthlyReport를 선택합니다.
    4. ‘실행’을 클릭합니다.
    5. 완료 메시지가 표시되는지 확인합니다.

    매크로가 실행되면 제목 행이 강조되고 D열의 금액이 천 단위 구분 기호로 표시됩니다. 예를 들어 숫자 1250000은 1,250,000으로 보입니다. 이는 표시 형식을 변경한 결과이며 셀에 저장된 실제 숫자 자체를 바꾸는 작업은 아닙니다.

    엑셀 자료 확인부터 자동 서식 적용과 결과 검증까지의 과정을 나타내는 업무 흐름 일러스트

    4. 실행 전후 비교: 무엇이 달라지는가?

    테스트 데이터가 500행까지 있다고 가정해 보겠습니다. 아래는 코드의 동작을 이해하기 위한 예시이며, 실제 측정 결과가 아니라 처리 범위와 표시 형식의 비교입니다.

    항목 실행 전 실행 후
    제목 행 일반 글꼴 굵은 글꼴·배경색·가운데 정렬
    D2 금액 1250000 1,250,000
    D500 금액 980000 980,000
    데이터 범위 행마다 수동 확인 A:D의 마지막 사용 행을 탐색
    마지막 행에 합계 표시 별도 확인 필요 감지 시 서식 적용 중단

    실제 시간 절감 효과는 데이터 크기, 기존 서식 상태, PC 성능과 검수 방식에 따라 달라집니다. 작은 자료에서는 절약 시간이 크지 않을 수 있지만, 동일한 형식의 자료를 반복해서 처리한다면 매번 범위를 선택하고 서식을 적용하는 단계를 줄일 수 있습니다.

    5. 실행 전 반드시 확인할 테스트 4가지

    코드가 정상적으로 실행되는지 확인하려면 성공 사례만 테스트해서는 안 됩니다. 아래 네 가지 상황을 별도의 복사본에서 확인합니다.

    테스트 1. 빈 셀과 빈 시트

    A에 아무 값도 없는 시트에서 매크로를 실행합니다. 데이터가 없다는 안내가 표시되고 오류 없이 종료되어야 합니다.

    테스트 2. 제목만 있는 시트

    A1에 제목만 입력하고 2행 이후는 비워 둡니다. 데이터가 없다는 안내가 표시되어야 하며, 제목 행만 있는 자료를 정상적인 실적 데이터로 처리해서는 안 됩니다.

    테스트 3. 다른 열에 합계가 있는 시트

    마지막 행의 A열에 ‘합계’, B열에 ‘월간 총계’ 또는 D열에 ‘소계’를 입력한 복사본을 준비합니다. 각 경우에 매크로가 중단되는지 확인합니다.

    이 검사는 합계 문구가 C열에만 있다는 가정을 피하기 위한 것입니다. 마지막 행에 해당 문구가 포함된 경우에만 감지하며, 중간 행의 합계나 표시 문구가 없는 합계는 별도로 관리해야 합니다.

    테스트 4. 열 제목이 변경된 시트

    D1의 ‘금액’을 ‘비고’로 바꾸고 실행해 봅니다. 현재 코드는 열 제목을 확인하지 않으므로 D열이 비고 열로 변경되어도 해당 열에 숫자 형식을 적용합니다. 즉, 이 코드는 열 제목이 바뀌어도 자동으로 올바른 금액 열을 찾아주는 범용 도구가 아닙니다.

    실무에 적용할 때는 열 제목을 확인하는 검증을 추가하거나, 회사에서 정한 고정 서식의 파일에만 사용해야 합니다.

    6. 매크로 자동화에서 자주 놓치는 부분

    표시 형식과 실제 데이터는 다릅니다

    숫자 표시 형식 #,##0은 소수점 없이 천 단위 구분 기호를 보여 줍니다. 원 단위 금액을 보기 좋게 표시할 때는 적절하지만, 소수점이 필요한 단가나 비율에는 맞지 않을 수 있습니다. 원본 숫자를 반올림하거나 삭제하는 작업과 혼동하지 않아야 합니다.

    마지막 행 탐색 기준을 통일합니다

    이번 코드는 A 범위의 마지막 사용 행을 찾습니다. 다른 코드나 설명에서 D열만 검색하거나 A를 검색하도록 바꾸면 처리 범위가 달라질 수 있습니다. 실제 자료 구조와 일치하도록 검색 범위를 통일해야 합니다.

    합계 행을 자동으로 제외한다고 과신하지 않습니다

    마지막 행에 합계·총계·소계 문구가 있다면 중단하도록 설계했지만, 모든 형태의 합계 행을 완벽하게 알아내는 코드는 아닙니다. 합계가 중간에 있거나 표시 문구 없이 숫자만 있다면 별도 검증이 필요합니다. 특히 회사의 정산 자료는 매크로 실행 후 합계와 원본 값을 대조해야 합니다.

    반복 실행 전에 원본을 보존합니다

    매크로를 수정하거나 처음 실행할 때는 원본을 직접 덮어쓰지 말고 복사본에서 테스트합니다. 매크로는 편리하지만 잘못 지정한 범위에 서식을 적용하거나 데이터를 변경하도록 작성되면 오류도 반복해서 실행할 수 있습니다.

    7. 개인정보와 사내 보안을 고려한 사용법

    엑셀 파일에 고객명, 전화번호, 계좌번호, 급여, 거래처별 계약 금액 등이 포함되어 있다면 매크로 실행과 별개로 데이터 취급 규정을 확인해야 합니다.

    • 실습과 코드 검증에는 가상의 이름과 금액을 사용합니다.
    • 회사에서 승인하지 않은 외부 AI 서비스에 실제 업무 파일이나 개인정보를 업로드하지 않습니다.
    • 매크로 파일은 신뢰할 수 있는 출처에서 받은 것만 사용하고, 출처가 불분명한 파일의 매크로는 실행하지 않습니다.
    • 회사에서 VBA 실행을 제한하거나 승인 절차를 두었다면 해당 규정을 따릅니다.
    • 원본 보존, 결과 대조, 실행 기록 등 회사의 자료 관리 절차를 유지합니다.

    특히 인터넷에서 받은 VBA 코드는 파일을 삭제하거나 외부 프로그램을 실행하는 명령을 포함할 수도 있습니다. 이번 예제는 셀의 서식만 변경하도록 작성했지만, 다른 코드도 같은 수준으로 안전하다고 가정해서는 안 됩니다.

    FAQ: 엑셀 매크로를 사용할 때 자주 묻는 질문

    Q1. 매크로가 포함된 파일은 어떤 형식으로 저장해야 하나요?

    VBA 매크로를 보존하려면 일반적으로 Excel 매크로 사용 통합 문서인 .xlsm 형식으로 저장합니다. .xlsx 형식으로 저장하면 VBA 코드가 유지되지 않을 수 있으므로 저장 시 파일 형식을 확인해야 합니다.

    Q2. 매크로를 실행했는데 보안 경고가 표시되면 어떻게 해야 하나요?

    경고를 무조건 해제하지 말고 파일의 출처와 코드를 먼저 확인합니다. 회사 PC에서는 IT 담당자나 보안 담당자의 승인 절차를 따릅니다. 신뢰할 수 없는 매크로를 실행하기 위해 보안 설정을 낮추는 것은 권장하지 않습니다.

    Q3. 매크로를 사용하면 개인정보가 자동으로 외부에 전송되나요?

    이번 예제의 코드는 엑셀 셀의 서식만 변경하며 외부 전송 기능을 포함하지 않습니다. 다만 모든 매크로가 동일한 것은 아닙니다. 외부 통신이나 파일 전송 명령이 있는 코드도 있으므로 실제 코드를 검토해야 합니다. 또한 엑셀 파일을 외부 AI 서비스에 올리거나 공유하는 경우에는 별도의 개인정보 및 사내 규정이 적용됩니다.

    마무리: 작은 반복 작업부터 자동화하기

    엑셀 매크로를 처음 도입한다면 월간 실적 자료의 제목 행과 금액 서식을 자동으로 맞추는 것처럼 결과를 쉽게 검증할 수 있는 작업부터 시작하는 편이 좋습니다.

    이번 예제의 VBA는 A 범위에서 마지막 행을 찾고, 마지막 행의 합계 관련 문구를 확인한 뒤, 제목 행과 금액 열에 서식을 적용합니다. 빈 시트와 제목만 있는 시트, 열 제목 변경, 합계 행 위치를 바꾼 사례를 테스트한 다음 실제 업무에 적용해야 합니다.

    자동화의 목표는 단순히 클릭 수를 줄이는 데 있지 않습니다. 같은 입력에 대해 일관된 결과를 얻고, 오류가 발생했을 때 원인을 추적할 수 있도록 만드는 것입니다. 검증 가능한 작은 매크로 하나부터 시작하면 반복적인 엑셀 업무를 더 안정적으로 관리할 수 있습니다.


  • 직장인을 위한 Google Apps Script로 구글 스프레드시트 자동화하는 법: 5단계 가이드

    직장인을 위한 Google Apps Script로 구글 스프레드시트 자동화하는 법: 5단계 가이드

    직장인을 위한 Google Apps Script로 구글 스프레드시트 자동화하는 (자세히 보기) (자세히 보기) (자세히 보기)법

    반복 입력이 많은 스프레드시트, 코딩을 몰라도 자동화할 수 있습니다

    업무용 구글 스프레드시트에 요청 내용을 계속 입력한다고 가정해 보겠습니다.

    B열에 업무 요청을 적을 때마다 A열에는 접수일을 넣고, D열에는 처리 상태를 기록해야 한다면 매번 같은 작업을 반복하게 됩니다.

    예를 들어 다음과 같은 표를 사용한다고 하겠습니다.

    A열 B열 C열 D열
    접수일 업무 요청 담당자 상태
    회의실 예약 확인 총무팀

    B5에 “회의실 예약 확인”을 입력할 때 A5에는 입력 시각, D5에는 “접수”가 자동으로 들어가도록 만들 수 있습니다.

    이때 사용하는 것이 Google Apps Script입니다. 이름은 어렵지만, 이번 예제에서는 복잡한 프로그래밍을 배울 필요가 없습니다. 준비된 짧은 스크립트를 붙여 넣고, 자신의 시트 구조에 맞는 부분만 확인하면 됩니다.

    다만 직장 업무에 적용할 때는 자동화 자체보다 어디까지 자동으로 수정하도록 허용할 것인지가 더 중요합니다. 이번 예제는 이 부분까지 포함해 5단계로 정리합니다.

    1단계. 먼저 자동화할 표의 범위를 정합니다

    처음부터 모든 셀을 자동화하지 않는 것이 좋습니다. 실제 업무에서 자동화 범위가 넓어질수록 예상하지 못한 셀 변경이 발생할 가능성도 커지기 때문입니다.

    이번 예제에서는 시트 이름을 “업무요청”으로 정하고 다음 규칙만 사용합니다.

    조건 자동 처리
    시트 이름이 업무요청 실행
    B열에 입력 또는 수정 실행
    1행 헤더 수정 실행하지 않음
    C열 입력 실행하지 않음
    다른 시트 입력 실행하지 않음

    여기서 한 가지를 정확히 알아둘 필요가 있습니다. 이번 스크립트는 “B열에 새로 입력될 때만” 실행되는 코드가 아닙니다. B열의 기존 내용을 수정해도 실행됩니다.

    따라서 B5에 처음 내용을 입력했을 때뿐 아니라, 나중에 B5의 내용을 다른 업무로 바꾸는 경우에도 A5와 D5가 다시 변경될 수 있습니다. 이 동작을 이해하고 사용하는 것이 중요합니다.

    2단계. Apps Script를 열고 스크립트를 넣습니다

    구글 스프레드시트에서 확장 프로그램 → Apps Script를 선택합니다.

    기존 편집창에 코드가 있다면 먼저 복사해 별도로 보관한 뒤 작업하는 편이 안전합니다.

    이번 예제에서는 다음 코드를 사용합니다.

    function onEdit(e) { if (!e || !e.range) return; const range = e.range; const sheet = range.getSheet(); // 지정한 시트에서만 실행 if (sheet.getName() !== '업무요청') return; // 헤더 행은 제외 if (range.getRow() <= 1) return; // B열에서만 실행 if (range.getColumn() !== 2) return; // 한 셀 입력만 처리 if (range.getNumRows() !== 1 || range.getNumColumns() !== 1) return; // 값이 실제로 입력된 경우에만 처리 if (e.value === undefined) return; const row = range.getRow(); sheet.getRange(row, 1).setValue(new Date()); sheet.getRange(row, 4).setValue('접수'); }

    코드를 길게 설명할 필요는 없습니다. 이번 자동화에서 확인할 부분은 네 가지입니다.

    • 업무요청이라는 시트에서만 작동합니다.
    • 1행은 제외합니다.
    • B열에서 수정할 때만 작동합니다.
    • 여러 셀을 한꺼번에 붙여넣는 경우는 처리하지 않습니다.

    특히 마지막 조건은 초보자에게 중요합니다. 이번 코드는 일부러 한 셀 입력만 대상으로 제한했습니다. 여러 행을 한꺼번에 붙여넣었을 때 각 행을 처리하는 별도 로직까지 추가하면 코드가 복잡해지므로, 처음 자동화를 적용할 때는 범위를 좁히는 편이 안전합니다.

    3단계. 실제 입력 → 결과를 확인합니다

    스프레드시트 입력부터 자동 결과까지 이어지는 업무 자동화 흐름

    이제 실제 업무 상황처럼 테스트해 보겠습니다.

    장면 1. B5에 한 셀을 입력하는 정상 사례

    시트 이름이 업무요청이고, 1행이 제목 행이라고 하겠습니다.

    B5에 다음 내용을 직접 입력합니다.

    B5 → 회의실 예약 확인

    입력을 마치면 스크립트가 실행되고 결과는 다음과 같이 바뀝니다.

    셀 입력 전 입력 후
    A5 비어 있음 입력한 시점의 날짜·시간
    B5 비어 있음 회의실 예약 확인
    D5 비어 있음 접수

    즉, 사람이 직접 입력한 것은 B5 하나지만 A5와 D5가 자동으로 채워집니다.

    이 방식은 접수대장, 업무 요청 목록, 문의 관리표처럼 “새로운 내용이 들어오면 기록 시각과 기본 상태를 남기는 표”에 활용하기 좋습니다.

    장면 2. 기존 A열과 D열에 값이 이미 있는 경우

    이번에는 조금 더 중요한 상황을 보겠습니다.

    기존에 다음과 같은 데이터가 있다고 하겠습니다.

    A5 B5 D5
    2026-10-01 09:10 모니터 교체 요청 처리완료

    여기서 B5의 내용을 다음처럼 수정합니다.

    B5 → 노트북 교체 요청

    그러면 스크립트는 B5가 기존 셀의 수정이라는 사실과 관계없이 실행됩니다. 결과적으로 A5에는 새로운 입력 시각이 기록되고 D5는 다시 “접수”로 바뀝니다.

    따라서 다음과 같은 결과가 발생합니다.

    셀 수정 전 수정 후
    A5 2026-10-01 09:10 새로운 입력 시점
    B5 모니터 교체 요청 노트북 교체 요청
    D5 처리완료 접수

    이것이 이번 자동화에서 가장 먼저 확인해야 할 부분입니다. A열과 D열의 기존 값이 보존된다고 가정하면 안 됩니다. 처리완료 상태를 사람이 직접 관리해야 하는 업무라면 이 코드는 그대로 사용하지 말고 조건을 추가해야 합니다.

    4단계. 붙여넣기 상황을 반드시 테스트합니다

    스프레드시트 자동화에서 초보자가 자주 놓치는 부분이 여러 행을 한꺼번에 붙여넣는 상황입니다.

    장면 3. B5 한 셀에 입력

    B5 → 회의실 예약 확인

    이 경우 이번 코드가 정상적으로 처리합니다.

    장면 4. B5:B8에 여러 행을 한꺼번에 붙여넣기

    B5 → 회의실 예약 확인
    B6 → 노트북 교체 요청
    B7 → 거래처 자료 전달
    B8 → 출장비 정산 확인

    이번 코드는 여러 셀을 동시에 수정한 경우를 의도적으로 중단하도록 만들어 두었습니다. 따라서 A5:A8과 D5:D8이 자동으로 모두 채워지지 않을 수 있습니다.

    여기서 e.value의 특성을 이해하면 이유가 분명해집니다. onEdit 이벤트에서 e.value는 한 셀의 새 값이 전달되는 상황을 전제로 사용할 수 있지만, 여러 셀을 한꺼번에 붙여넣는 경우에는 동일한 방식으로 각 행의 값을 하나씩 처리할 수 없습니다.

    따라서 “분명 데이터를 붙여넣었는데 왜 일부 행에는 날짜가 안 들어가지?”라는 상황이 발생할 수 있습니다. 오류라기보다 현재 스크립트가 한 셀 입력만 처리하도록 제한되어 있기 때문입니다.

    실무에서는 두 가지 방법 중 하나를 선택하면 됩니다.

    • 입력이 대부분 한 셀씩 이루어진다면 현재처럼 범위를 제한합니다.
    • 엑셀이나 다른 시스템에서 여러 행을 자주 붙여넣는다면 여러 행을 처리하는 별도의 코드를 설계합니다.

    처음부터 두 번째 방식을 적용하기보다 실제 업무 패턴을 먼저 확인하는 것이 좋습니다.

    5단계. 오류 장면과 안전 범위를 확인한 뒤 업무에 적용합니다

    자동화는 “작동한다”는 것보다 작동하지 않아야 하는 상황에서 정말 작동하지 않는지 확인하는 것이 중요합니다.

    오류 장면 1. 시트 이름이 다른 경우

    시트 이름 → 업무요청2
    B5 → 회의실 예약 확인

    예상 결과는 아무 변화 없음입니다.

    코드가 sheet.getName() !== '업무요청'인지 확인하기 때문입니다. 이 조건은 다른 시트에서 실수로 A열이나 D열을 수정하는 일을 막는 안전장치 역할을 합니다.

    오류 장면 2. C열에 입력한 경우

    C5 → 총무팀

    예상 결과 역시 자동화되지 않음입니다.

    이번 코드는 B열, 즉 2번 열만 감시하도록 설정했기 때문입니다. 담당자를 입력했다고 해서 A열의 날짜와 D열의 상태가 새로 기록되지 않습니다.

    오류 장면 3. B5의 기존 내용을 수정한 경우

    기존 B5 → 모니터 교체 요청
    새로운 B5 → 노트북 교체 요청

    이 경우에는 자동화가 실행됩니다. 따라서 A5의 기존 날짜와 D5의 기존 상태가 다시 변경될 수 있습니다.

    이 동작이 업무에 맞지 않는다면 “B열에 처음 입력될 때만 실행”하도록 조건을 별도로 설계해야 합니다. 중요한 것은 코드가 실제로 어떤 조건에서 실행되는지 확인한 뒤 업무에 적용하는 것입니다.

    직장 업무에서 응용할 수 있는 자동화 예시

    같은 구조를 조금씩 바꾸면 여러 업무에 적용할 수 있습니다.

    업무 입력 자동 처리 아이디어
    업무 요청 관리 요청 내용 접수일 + 기본 상태
    문의 관리 문의 내용 접수 시각 + 미답변 상태
    자료 요청 목록 자료명 요청일 + 진행상태
    회의 요청 관리 회의 내용 등록일 + 확인 상태

    예를 들어 문의 관리표라면 B열에 문의 내용을 입력했을 때 A열에 접수 시각, D열에 “미답변”을 기록하는 방식으로 바꿀 수 있습니다.

    상태를 “접수” 대신 “검토중”으로 바꾸는 것도 가능합니다. 다만 업무에 따라 기존 상태를 덮어쓰면 안 되는 경우가 있으므로, 자동화 대상 열을 정하기 전에 실제 처리 절차를 먼저 확인하는 편이 좋습니다.

    코딩을 몰라도 ChatGPT를 이용해 수정할 수 있는 방법 (자세히 보기)

    Apps Script의 코드를 직접 작성하는 것이 부담스럽다면 현재 스프레드시트의 구조를 설명하고 수정 조건을 요청할 수 있습니다.

    예를 들어 다음처럼 입력합니다.

    구글 스프레드시트에 업무요청 시트가 있습니다.
    1행은 헤더입니다.
    B열에 처음 업무 내용을 입력하면 A열에 입력 날짜와 시간을 기록하고 D열에는 '접수'를 넣고 싶습니다.
    단, B열의 기존 내용을 수정할 때는 A열과 D열을 다시 덮어쓰면 안 됩니다.
    여러 행을 한꺼번에 붙여넣는 경우도 처리해야 합니다.
    비개발자가 Apps Script에 그대로 붙여넣을 수 있는 코드와 각 조건을 설명해 주세요.

    이렇게 시트 이름, 열 위치, 헤더 행, 최초 입력인지 수정인지, 붙여넣기 여부를 구체적으로 알려주면 단순히 “스프레드시트를 자동화해줘”라고 요청하는 것보다 실제 업무에 맞는 결과를 얻기 쉽습니다.

    직장인이 노트북에서 스프레드시트 자동화 결과를 확인하는 모습

    직장용 Apps Script에서 특히 주의할 점

    첫째, 회사의 보안 규정을 먼저 확인합니다. 회사 계정의 스프레드시트에는 고객 정보, 직원 정보, 계약 정보처럼 외부 서비스에 입력하면 안 되는 데이터가 포함될 수 있습니다. ChatGPT에 코드를 요청할 때도 실제 개인정보나 영업기밀을 그대로 붙여 넣지 않는 것이 안전합니다.

    둘째, 복사본에서 먼저 테스트합니다. 특히 기존 데이터를 자동으로 덮어쓰는 코드는 원본 파일에서 바로 실행하지 않는 편이 좋습니다. 테스트용 스프레드시트를 복사해 B5 입력, B5 수정, C5 입력, 여러 행 붙여넣기를 차례로 확인하면 예상하지 못한 동작을 발견하기 쉽습니다.

    셋째, Apps Script 실행 오류가 발생했다고 해서 무조건 코드를 다시 작성할 필요는 없습니다. 이번 코드의 onEdit(e)는 스프레드시트에서 실제 셀을 수정했을 때 전달되는 이벤트 정보를 사용하는 구조입니다. Apps Script 편집기에서 일반적인 실행 버튼으로 onEdit을 직접 실행하면 이벤트 객체 e가 전달되지 않아 정상적인 셀 수정 상황과 다르게 동작할 수 있습니다.

    따라서 이 예제는 코드를 저장한 뒤 스프레드시트로 돌아가 실제 B열 셀을 수정하는 방식으로 테스트하는 것이 맞습니다. 권한 승인이나 별도의 설치형 트리거가 필요한 복잡한 작업과는 구분해서 이해하면 됩니다.

    마무리: 자동화의 범위를 작게 잡는 것이 시작점입니다

    Google Apps Script를 처음 접하는 직장인이라면 복잡한 자동화 시스템부터 만들 필요가 없습니다.

    이번 예제처럼 “B열에 업무 내용을 입력하면 A열에는 시각을 기록하고 D열에는 기본 상태를 넣는다” 정도의 작은 작업부터 시작하면 됩니다.

    다만 실제 업무에서는 다음 네 가지를 먼저 확인하는 것이 좋습니다.

    1. 어느 시트에서 실행할 것인가?
    2. 어느 열을 수정했을 때 실행할 것인가?
    3. 기존 값을 덮어써도 되는가?
    4. 한 셀 입력과 여러 행 붙여넣기를 어떻게 구분할 것인가?

    이 네 가지가 정리되면 코드 자체는 오히려 단순해집니다. 자동화의 목적은 코드를 많이 만드는 것이 아니라, 반복 작업은 줄이면서 기존 업무 데이터를 안전하게 보존하는 것에 있기 때문입니다.

    FAQ

    Q1. Apps Script를 처음 사용하는데 코드를 실행 버튼으로 실행하면 되나요?

    이번 예제의 onEdit(e)는 셀을 실제로 수정했을 때 발생하는 이벤트를 이용합니다. 따라서 Apps Script 편집기에서 함수를 직접 실행하기보다 코드를 저장한 뒤 스프레드시트로 돌아가 B열의 셀을 직접 수정해 테스트하는 것이 적절합니다. 직접 실행했을 때 이벤트 정보가 없어 오류가 발생할 수 있습니다.

    Q2. 기존 B5의 내용을 수정해도 A5와 D5가 바뀌나요?

    네. 이번 예제의 코드는 “처음 입력된 경우”만 구분하지 않습니다. B열의 기존 셀을 수정해도 실행됩니다. 따라서 기존 A열의 날짜와 D열의 상태가 새로운 날짜와 “접수”로 다시 덮어써질 수 있습니다. 기존 값을 보존해야 하는 업무라면 최초 입력 여부를 확인하는 조건을 추가해야 합니다.

    Q3. 여러 행을 한꺼번에 붙여넣으면 왜 자동 처리가 되지 않나요?

    이번 예제는 초보자가 동작을 이해하기 쉽도록 한 셀 입력만 처리하도록 제한했습니다. 여러 행을 붙여넣는 업무가 많다면 여러 셀 범위를 순회하면서 각 행을 처리하는 별도의 로직이 필요합니다. 따라서 실제 업무에 적용하기 전에는 한 셀 입력과 여러 행 붙여넣기 모두 테스트하는 것이 좋습니다.

    코드의 대량 붙여넣기 동작을 정확히 고쳐줘
    초보자가 따라 할 테스트 절차를 추가해줘


  • 엑셀 피벗 테이블을 Perplexity로 빠르게 만드는 실전 방법

    엑셀 피벗 테이블을 Perplexity로 빠르게 만드는 실전 방법

    엑셀 데이터를 피벗 테이블로 정리할 때, Perplexity를 이렇게 써보세요

    월별 매출, 부서별 비용, 거래처별 실적처럼 행이 수백~수천 개로 늘어난 엑셀 파일을 받으면 단순히 합계를 구하는 것부터 번거로워집니다. 특히 피벗 테이블을 자주 사용하지 않는 직장인이라면 행·열·값·필터 영역을 어떻게 배치해야 원하는 결과가 나오는지 다시 찾아보게 됩니다.

    이럴 때 Perplexity를 피벗 테이블 자체를 대신하는 도구라기보다, 피벗 테이블을 어떻게 구성하고 검증할지 알려주는 업무 보조 도구로 활용하면 편리합니다.

    이번 글에서는 가상의 매출 데이터를 기준으로, Perplexity에 어떤 식으로 요청하고 그 결과를 엑셀에서 어떻게 적용하는지 순서대로 살펴보겠습니다.

    1. 먼저 엑셀 데이터를 피벗 테이블에 적합하게 정리합니다

    AI를 사용하기 전에 데이터 구조부터 확인해야 합니다. 예를 들어 다음과 같은 매출 자료가 있다고 가정하겠습니다.

    날짜 영업담당 지역 제품 수량 매출액
    2026-09-01 박서윤 서울 A제품 12 1,200,000
    2026-09-01 이도현 경기 B제품 8 960,000
    2026-09-02 박서윤 서울 C제품 5 750,000
    2026-09-02 최민지 부산 A제품 10 1,000,000

    실제 업무 파일에서는 이보다 훨씬 많은 행이 있을 것입니다. 여기서 중요한 것은 첫 번째 행에 각 열의 이름이 있고, 중간에 병합된 셀이나 빈 행이 섞이지 않도록 하는 것입니다.

    예를 들어 다음과 같은 형태라면 피벗 테이블을 만들기 전에 먼저 정리하는 편이 좋습니다.

    2026년 9월 매출
    서울 지역
    담당자별 매출
    —————-
    박서윤 / A제품 / 1,200,000원
    …

    반대로 날짜, 담당자, 지역, 제품, 수량, 매출액처럼 한 행이 하나의 거래 기록을 나타내는 구조라면 피벗 테이블에 사용하기 좋습니다.

    2. Perplexity에는 “피벗 테이블 만들어줘”보다 구체적으로 요청합니다

    여기서 이번 방법의 차이가 생깁니다.

    단순히 “엑셀 피벗 테이블 만드는 방법 알려줘”라고 입력하면 일반적인 사용법을 설명하는 답변이 나올 가능성이 높습니다. 실무에서는 원하는 분석 결과와 현재 열 이름을 함께 전달하는 방식이 훨씬 유용합니다.

    예를 들어 다음과 같이 입력합니다.

    다음과 같은 엑셀 매출 데이터가 있습니다.

    열 이름: 날짜, 영업담당, 지역, 제품, 수량, 매출액

    목표는 다음과 같습니다.

    1. 지역별 총매출을 확인하고 싶습니다.
    2. 지역을 행으로 배치하고 매출액을 값으로 사용하고 싶습니다.
    3. 매출액은 합계로 계산하고 싶습니다.
    4. 제품별로도 비교할 수 있도록 열 방향에 제품을 배치하고 싶습니다.

    엑셀 피벗 테이블에서 행, 열, 값, 필터 영역에 각각 무엇을 넣어야 하는지 표로 설명하고, 실제로 클릭해야 하는 순서까지 알려주세요.

    이 요청의 장점은 결과를 바로 엑셀 작업으로 옮길 수 있다는 점입니다.

    Perplexity가 제시해야 하는 결과의 형태

    피벗 영역 넣을 필드 목적
    행 지역 지역별 구분
    열 제품 제품별 비교
    값 매출액 매출액 합계
    필터 영업담당 담당자별 조회

    이제 엑셀에서 삽입 → 피벗 테이블을 선택하고 해당 필드를 각 영역에 끌어다 놓으면 됩니다.

    엑셀 스프레드시트를 보면서 데이터를 분석하는 업무 장면

    3. 실제 결과를 한 번 더 검증합니다

    여기서 대부분 놓치기 쉬운 단계가 있습니다. AI가 알려준 배치 방법과 실제 피벗 테이블의 숫자가 맞는지 확인하는 과정입니다.

    예를 들어 피벗 테이블 결과가 다음과 같이 나왔다고 가정하겠습니다.

    지역 A제품 B제품 C제품 총합계
    서울 12,500,000 8,200,000 5,100,000 25,800,000
    경기 9,300,000 11,400,000 4,800,000 25,500,000
    부산 7,100,000 6,900,000 3,600,000 17,600,000

    이때 “서울 매출이 가장 높으니 서울이 가장 실적이 좋다”고 바로 결론 내리면 안 됩니다. 데이터의 기간이나 거래 건수, 환불·취소 데이터 포함 여부 등에 따라 해석이 달라질 수 있기 때문입니다.

    대신 Perplexity에 검증 질문을 추가할 수 있습니다.

    위 피벗 테이블의 분석 결과를 검증하고 싶습니다. 지역별 총매출을 비교할 때 함께 확인해야 할 데이터 오류나 해석상의 주의점을 5개만 알려주세요. 단순한 엑셀 기능 설명보다 실제 업무에서 숫자를 잘못 해석하는 사례 중심으로 답해주세요.

    이렇게 하면 단순히 피벗 테이블을 만드는 데서 끝나지 않고, 결과를 잘못 읽는 실수까지 줄이는 방향으로 활용할 수 있습니다.

    4. 데이터가 많다면 “분석 목적”부터 Perplexity에 전달합니다

    실무에서는 열이 10개, 20개 이상인 파일도 흔합니다. 이때 모든 데이터를 무작정 설명하기보다 먼저 분석 목적을 정하는 것이 좋습니다.

    예를 들어 월별 매출 보고서를 만들어야 한다면 다음처럼 요청할 수 있습니다.

    엑셀에 다음 열이 있습니다: 주문일, 거래처, 담당자, 지역, 제품군, 제품명, 수량, 공급가액, 부가세, 총금액.

    팀장에게 월간 매출 현황을 보고해야 합니다.

    피벗 테이블을 활용해 ①월별 총매출 ②지역별 매출 ③제품군별 매출 ④담당자별 매출을 확인하려고 합니다.

    각 분석별로 행·열·값·필터 영역을 어떻게 구성하면 되는지 표로 정리해주세요. 같은 원본 데이터를 사용하면서 피벗 테이블을 몇 개 만드는 것이 효율적인지도 설명해주세요.

    이 방식은 “엑셀 기능을 배우는 것”보다 “업무 결과를 만들기 위해 필요한 피벗 구조를 설계하는 것”에 가깝습니다.

    원본 데이터를 분석 결과로 정리하는 과정을 보여주는 일러스트

    5. 한 단계 더 나아가는 방법: Perplexity를 ‘설계자’로 사용하기

    Perplexity에 엑셀 작업 자체를 모두 맡기려고 하기보다 피벗 테이블 설계와 확인 절차를 맡기는 방식이 안정적입니다.

    특히 회사에서 사용하는 실제 파일에는 거래처명, 직원명, 전화번호, 이메일, 계약금액 등 외부 서비스에 전달하면 안 되는 정보가 포함될 수 있습니다.

    따라서 원본 파일을 그대로 올리기 전에 먼저 개인정보와 회사 기밀정보를 제거하거나, 필요한 열만 추려서 별도의 분석용 데이터를 만드는 것이 좋습니다.

    예를 들어 실제 거래처명이 다음과 같다면

    ㈜○○전자 / 담당자 홍길동 / 010-1234-5678 / 매출 12,500,000원

    분석 목적이 지역별 매출 비교라면 거래처명과 전화번호가 반드시 필요한 것은 아닙니다. 다음처럼 최소한의 정보만 남길 수 있습니다.

    지역: 서울 / 제품군: A / 매출액: 12,500,000원

    이것이 이번 활용법에서 가장 중요한 실무상의 차이입니다. AI에 더 많은 데이터를 보여주는 것이 항상 더 좋은 결과를 의미하지는 않습니다. 분석에 필요한 정보만 남기면 보안 위험도 낮추고 요청 내용도 간결해집니다.

    6. 바로 복사해서 사용할 수 있는 Perplexity 요청문

    업무에서 반복적으로 사용할 예정이라면 아래 형태로 저장해 두면 편합니다.

    [엑셀 피벗 테이블 설계 요청]

    다음은 엑셀 데이터의 열 이름입니다.

    [열 이름 입력]

    제가 확인하려는 업무 지표는 다음과 같습니다.

    ① [분석 목적 1]
    ② [분석 목적 2]
    ③ [분석 목적 3]

    각 목적에 적합한 피벗 테이블을 설계해주세요.

    다음 형식으로 답해주세요.

    1. 행 영역
    2. 열 영역
    3. 값 영역 및 계산 방식
    4. 필터 영역
    5. 엑셀에서 실제로 설정하는 순서
    6. 결과를 해석할 때 확인해야 할 데이터 오류 3가지

    개인정보나 회사 기밀정보는 분석에 필요하지 않으므로 제외하고 설명해주세요.

    7. 이 방법이 특히 유용한 업무

    피벗 테이블을 매번 새로 구성해야 하는 업무라면 효과가 큽니다.

    업무 활용 예
    매출 관리 지역·제품·담당자별 매출 비교
    구매 관리 거래처·품목별 구매 금액 집계
    재고 관리 창고·제품별 재고 수량 확인
    인사 관리 부서·직급별 인원 현황 집계
    비용 관리 부서·월별 지출 내역 비교

    반대로 단순히 열 몇 개를 합산하는 정도라면 굳이 Perplexity를 거칠 필요가 없습니다. 엑셀의 기본 함수나 피벗 테이블 기능만으로 바로 처리하는 편이 빠릅니다.

    마무리

    Perplexity를 활용한 엑셀 피벗 테이블 작업의 목적은 엑셀을 대신 조작하게 만드는 것이 아니라, 복잡한 원본 데이터를 보고 “어떤 기준으로 묶어야 원하는 숫자가 나오는가”를 빠르게 설계하는 데 있습니다.

    실무에서는 다음 순서만 기억해도 충분합니다.

    ① 원본 데이터 정리 → ② 분석 목적 결정 → ③ Perplexity에 열 이름과 목표 전달 → ④ 피벗 구조 확인 → ⑤ 엑셀에서 직접 생성 → ⑥ 숫자 검증

    특히 회사 자료를 다룰 때는 원본 파일 전체를 그대로 AI 서비스에 제공하기보다, 분석에 필요한 열만 추려서 사용하는 습관을 권합니다. AI가 피벗 테이블의 구조를 잘 제안하더라도 최종 숫자와 업무상 판단은 원본 데이터와 회사 기준으로 다시 확인해야 합니다.

    FAQ

    Q1. 회사의 엑셀 파일을 Perplexity에 그대로 업로드해도 되나요?

    회사 규정과 보안정책을 먼저 확인해야 합니다. 특히 고객 개인정보, 직원 개인정보, 계약정보, 영업기밀 등이 포함된 파일이라면 회사에서 승인한 AI 서비스인지 확인하는 것이 우선입니다. 가능하다면 이름·전화번호·이메일·거래처 식별정보 등 분석에 필요하지 않은 정보는 제거하고 사용하는 것이 안전합니다.

    Q2. Perplexity가 만든 피벗 테이블 결과를 그대로 보고서에 사용해도 되나요?

    바로 사용하는 것은 권하지 않습니다. AI가 제안한 구조와 계산 방식을 확인한 뒤, 엑셀 원본의 합계와 피벗 테이블의 합계가 일치하는지 확인하는 것이 좋습니다. 날짜 범위, 빈 셀, 중복 행, 취소 거래처럼 원본 데이터의 상태에 따라 결과가 달라질 수 있기 때문입니다.

    Q3. 엑셀을 잘 못해도 이 방법을 사용할 수 있나요?

    가능합니다. 다만 최소한 행·열·값·필터가 각각 어떤 역할을 하는지는 알아두는 편이 좋습니다. Perplexity에 “무엇을 분석하고 싶은지”를 설명하고, AI가 제시한 필드 배치를 엑셀 피벗 테이블에 적용하는 정도부터 시작하면 됩니다. 복잡한 VBA나 프로그래밍을 배울 필요는 없습니다.


  • 직장인을 위한 Notion AI 데이터 정리·분석, 5분 만에 시작하는 법

    직장인을 위한 Notion AI 데이터 정리·분석, 5분 만에 시작하는 법

    직장인을 위한 Notion AI 데이터 정리·분석, 5분 만에 시작하는 법

    (자세히 보기) (자세히 보기) (자세히 보기)

    회의록과 업무 데이터를 일일이 읽고 정리하고 있다면

    직장에서 다루는 데이터는 거창한 통계 자료만 뜻하지 않습니다. 회의록, 고객 문의, 업무 요청, 프로젝트 진행 상황처럼 매일 쌓이는 기록도 충분히 분석 대상이 됩니다.

    문제는 데이터의 양보다 정리하는 데 걸리는 시간입니다.

    예를 들어 고객 문의 30건이 들어왔다고 해보겠습니다. 담당자가 직접 읽으면서 유형을 분류하고, 반복되는 문제를 찾고, 우선순위를 정하는 데 상당한 시간이 걸립니다.

    Notion에 데이터를 모아두었다면 Notion AI의 데이터베이스 자동 채우기 기능을 이용해 이런 반복 작업을 줄일 수 있습니다. 현재 Notion은 데이터베이스 속성에서 요약, 주요 정보 추출, 태그 분류 등을 AI로 자동 채우는 기능을 제공하고 있습니다.

    여기서는 복잡한 데이터 분석부터 시작하지 않습니다. ① 데이터를 넣고 → ② AI로 분류하고 → ③ 결과를 차트로 확인하는 순서로 5분짜리 업무 흐름을 만들어보겠습니다.

    1. 먼저 데이터를 Notion 데이터베이스에 넣습니다

    가장 간단한 방법은 표 형태의 데이터를 CSV로 준비하는 것입니다.

    예를 들어 고객 문의를 다음처럼 준비했다고 가정하겠습니다.

    문의일 | 문의내용 | 담당부서
    10/1 | 앱 로그인 후 화면이 계속 멈춥니다 | 고객지원
    10/1 | 결제했는데 주문 상태가 변경되지 않습니다 | 고객지원
    10/2 | 배송 예정일을 확인하고 싶습니다 | 물류
    10/2 | 비밀번호를 변경하고 싶습니다 | 고객지원
    10/3 | 결제 화면에서 오류가 발생합니다 | 개발

    Notion에서는 CSV를 가져오면 행은 데이터베이스 항목으로, 열은 속성으로 변환할 수 있습니다. /csv를 입력해 가져오거나 설정의 가져오기 메뉴를 이용할 수 있습니다.

    실전 순서

    1. 엑셀이나 Google Sheets에서 업무 데이터를 정리합니다.
    2. 가능하면 한 행에 하나의 업무나 문의만 넣습니다.
    3. Notion에서 새 페이지를 만들고 /csv를 입력합니다.
    4. CSV 파일을 가져온 뒤 각 열을 적절한 데이터베이스 속성에 연결합니다.

    여기서 중요한 점은 AI에게 정리를 맡기기 전에 데이터의 한 행이 무엇을 의미하는지 통일하는 것입니다.

    예를 들어 한 행에는 고객 문의 하나만 넣고, 문의가 여러 개라면 각각 별도의 행으로 분리합니다. 이 기본 구조가 잡혀 있어야 이후 AI의 분류 결과도 관리하기 쉽습니다.

    업무 데이터를 항목별로 분류하는 과정을 보여주는 일러스트

    2. Notion AI에게 반복 분류를 맡겨봅니다

    이제부터가 실제로 시간을 줄이는 부분입니다.

    예를 들어 데이터베이스에 문의내용이라는 속성이 있고, 여기에 고객 문의가 들어 있다고 하겠습니다.

    여기에 다음과 같은 AI 자동 채우기용 속성을 하나 추가합니다.

    • 문의 유형
    • 긴급도
    • 요약

    Notion 데이터베이스의 속성 메뉴에서 AI Autofill을 설정하면 해당 페이지의 내용을 바탕으로 요약이나 주요 정보 추출, 분류 등을 자동화할 수 있습니다. 기본 자동 채우기는 해당 행 또는 페이지의 내용을 대상으로 작동하며, 웹을 검색하는 기능은 아닙니다.

    실제 입력 예시

    예를 들어 문의 유형 속성에 다음과 같이 지시합니다.

    문의내용을 읽고 문의 유형을 다음 4개 중 하나로 분류하세요.
    결제 / 배송 / 로그인·계정 / 기타
    내용에 명확한 근거가 없는 경우 임의로 추측하지 말고 기타로 분류하세요.

    그러면 앞의 데이터는 다음처럼 정리할 수 있습니다.

    문의내용 AI 분류 결과
    앱 로그인 후 화면이 계속 멈춥니다 로그인·계정
    결제했는데 주문 상태가 변경되지 않습니다 결제
    배송 예정일을 확인하고 싶습니다 배송
    비밀번호를 변경하고 싶습니다 로그인·계정
    결제 화면에서 오류가 발생합니다 결제

    이렇게 하면 담당자가 30건, 50건의 문의를 하나씩 읽으며 같은 분류 작업을 반복할 필요가 줄어듭니다.

    3. 대부분 놓치는 부분: AI에게 ‘판단 기준’까지 알려주세요

    단순히 “문의 유형을 분류해줘”라고 요청하는 것보다 분류 기준과 예외 처리 방법을 함께 지정하는 것이 결과를 일정하게 만드는 데 유리합니다.

    예를 들어 다음과 같이 입력합니다.

    문의 유형을 분류하세요.

    결제: 결제 승인, 결제 실패, 환불, 결제 금액 관련 문의
    배송: 배송 일정, 배송 상태, 배송지 변경 관련 문의
    로그인·계정: 로그인, 비밀번호, 계정 잠금 관련 문의
    기타: 위 세 가지에 명확하게 해당하지 않는 문의

    한 문의에 여러 문제가 포함되어 있으면 가장 직접적인 요청을 기준으로 분류하세요. 판단할 근거가 부족하면 기타로 분류하세요.

    이 차이가 실무에서는 꽤 큽니다. AI가 매번 자유롭게 판단하도록 두면 같은 유형의 데이터가 서로 다른 범주로 들어갈 수 있기 때문입니다.

    AI에게 일을 시킬 때는 ‘무엇을 해라’보다 ‘어떤 기준으로 해라’까지 정하는 것이 좋습니다.

    4. 정리된 데이터를 바로 분석해봅니다

    이제 문의 유형별 개수를 확인해보겠습니다.

    앞의 예시 데이터가 100건으로 늘어났다고 가정합니다.

    문의 유형 건수
    결제 42건
    배송 31건
    로그인·계정 19건
    기타 8건

    이제 단순히 “고객 문의가 많다”가 아니라 어떤 문제가 많이 발생하는지를 한눈에 볼 수 있습니다.

    특히 Notion에서는 데이터베이스에 차트 보기를 추가할 수 있습니다. 현재 차트 보기에서는 막대, 선, 도넛, 숫자 차트 등을 선택할 수 있고, X축과 Y축에 어떤 속성을 표시할지도 지정할 수 있습니다.

    예를 들어 문의 유형별 건수를 보고 싶다면 다음처럼 구성하면 됩니다.

    1. 데이터베이스 옆 + 보기 추가를 선택합니다.
    2. 차트를 선택합니다.
    3. 막대 차트를 선택합니다.
    4. X축에는 문의 유형을 지정합니다.
    5. Y축에는 Count를 선택합니다.

    그러면 회의 때 다음과 같이 바로 설명할 수 있습니다.

    “지난 100건의 문의 중 결제 관련 문의가 42건으로 가장 많았습니다. 배송 문의가 31건으로 뒤를 이었습니다.”

    표를 다시 읽어가며 숫자를 세는 대신, 데이터가 업데이트될 때 차트도 함께 확인할 수 있다는 것이 실무적인 장점입니다.

    회의에서 업무 데이터를 차트로 확인하는 직장인

    5. 5분 실전 템플릿: 회의록을 업무 데이터로 바꾸기

    이 방법은 고객 문의뿐 아니라 회의록에도 적용할 수 있습니다.

    예를 들어 회의록 데이터베이스에 다음 내용이 들어 있다고 하겠습니다.

    “신규 홈페이지 개편 일정은 11월 10일까지 완료하기로 함. 디자인팀은 메인 화면 시안을 금요일까지 제출. 개발팀은 시안 확정 후 예상 개발 기간을 산정. 마케팅팀은 이벤트 문구 초안을 다음 주 월요일까지 준비.”

    여기에 AI 자동 채우기 속성을 추가하고 다음과 같이 요청합니다.

    회의 내용을 2문장으로 요약하고, 담당 업무가 명시된 경우 담당 부서와 할 일을 추출하세요. 날짜가 명시된 경우 마감일도 추출하세요. 내용에 없는 날짜나 담당자는 추측하지 마세요.

    그러면 하나의 긴 회의록을 다음과 같은 업무 데이터로 바꾸는 데 활용할 수 있습니다.

    항목 결과 예시
    요약 홈페이지 개편을 11월 10일까지 완료한다. 디자인 시안 확정 후 개발 일정을 산정한다.
    담당 디자인팀
    업무 메인 화면 시안 제출
    마감 금요일

    이후 같은 데이터베이스에서 담당 부서별, 상태별, 마감일별 보기를 만들어 관리할 수 있습니다. Notion 데이터베이스는 표뿐 아니라 보드, 캘린더, 타임라인, 차트 등 다양한 방식으로 데이터를 볼 수 있습니다.

    6. 회사에서 사용할 때는 ‘데이터를 넣기 전’에 한 번 더 확인하세요

    업무 효율을 높이려고 AI를 사용하다가 회사 정보를 그대로 외부 서비스에 입력하는 것은 피해야 합니다.

    특히 다음 정보는 회사의 AI 이용 규정과 보안 정책을 먼저 확인하는 것이 좋습니다.

    • 고객 이름, 전화번호, 이메일 주소
    • 주민등록번호 등 고유식별정보
    • 계약 금액이나 미공개 재무정보
    • 아직 공개되지 않은 제품·사업 정보
    • 사내 계정이나 인증정보
    • 인사평가와 같은 민감한 인사 정보

    가능하다면 실제 이름 대신 고객 A, 업체 B처럼 비식별화한 데이터를 사용하고, 회사에서 승인한 워크스페이스와 AI 기능만 사용하는 것이 안전합니다.

    또한 Notion은 AI가 생성한 내용의 정확성을 확인할 것을 안내하고 있습니다. 특히 일정, 금액, 고객 정보처럼 오류가 바로 업무 문제로 이어질 수 있는 데이터는 AI 결과를 원본과 대조해야 합니다.

    7. 오늘 바로 따라 하는 5분 순서

    1. 1분: 정리할 업무 데이터 10~30건을 준비합니다.
    2. 2분: Notion 데이터베이스에 CSV로 가져오거나 표 형태로 입력합니다.
    3. 3분: AI Autofill로 요약·분류·주요 정보 추출 속성을 만듭니다.
    4. 4분: AI에게 분류 기준과 예외 조건을 명확하게 지정합니다.
    5. 5분: 차트 보기에서 유형별 건수나 상태별 분포를 확인합니다.

    처음부터 모든 업무를 자동화하려 하지 않는 것도 좋습니다. 반복해서 사람이 직접 분류하고 있는 업무 하나를 골라 AI Autofill을 적용하는 것부터 시작하면 됩니다.

    예를 들어 매주 회의록을 정리한다면 ‘요약 + 담당 업무 + 마감일’부터 시작하고, 고객 문의가 많다면 ‘문의 유형 + 긴급도 + 요약’부터 만들어보는 방식입니다.

    마무리: Notion AI의 가치는 ‘분석’보다 반복 작업을 줄이는 데 있습니다

    Notion AI를 데이터 분석 도구로만 생각하면 복잡하게 느껴질 수 있습니다. 실제 업무에서는 오히려 반복되는 읽기·분류·요약 작업을 데이터베이스 안에서 줄이는 방식으로 접근하는 편이 실용적입니다.

    특히 다음 구조를 기억해두면 좋습니다.

    원본 데이터 입력 → AI로 기준에 따라 분류 → 데이터베이스에서 필터·정렬 → 차트로 현황 확인

    이 흐름을 한 번 만들어두면 같은 형식의 데이터가 들어올 때마다 처음부터 다시 정리할 필요가 줄어듭니다.

    다만 AI의 판단을 그대로 확정하는 것이 목적은 아닙니다. AI가 반복 작업을 맡고, 최종 판단은 사람이 하는 구조로 사용하는 것이 직장 업무에서는 가장 현실적입니다.

    FAQ

    Q1. Notion AI가 엑셀 파일도 바로 분석할 수 있나요?

    CSV 형태라면 Notion으로 가져와 데이터베이스로 구성할 수 있습니다. 또한 현재 Notion의 Agent는 최대 1,000행의 CSV를 읽어 분석하거나 차트·보드 형태로 시각화할 수 있다고 안내되어 있습니다. 다만 회사에서 사용하는 데이터라면 파일을 업로드하기 전에 사내 보안정책과 허용된 AI 사용 범위를 먼저 확인하는 것이 좋습니다.

    Q2. Notion AI가 분류한 결과를 그대로 보고서에 사용해도 되나요?

    권장하지 않습니다. AI가 분류 기준을 잘못 이해하거나 원문에 없는 내용을 추론할 수 있기 때문입니다. 특히 숫자, 일정, 계약 내용처럼 오류 비용이 큰 정보는 원본 데이터와 대조한 뒤 사용하세요. Notion 역시 AI 결과의 정확성을 확인할 것을 안내하고 있습니다.

    Q3. 개인정보가 들어간 고객 데이터를 Notion AI에 넣어도 되나요?

    회사 규정에서 허용하지 않았다면 넣지 않는 것이 안전합니다. 고객 이름·연락처 등을 고객 A·고객 B처럼 비식별화하고, 필요한 정보만 남기는 방법을 우선 고려하세요. 회사에서 승인한 Notion 워크스페이스인지, AI 기능의 사용이 허용되어 있는지도 함께 확인해야 합니다. Notion은 AI 관련 데이터 보호 및 보안 관행을 별도로 안내하고 있으므로 회사의 보안정책과 함께 확인하는 것이 좋습니다.

    실제 화면 기준으로 단계 다듬기
    5분 실행 흐름을 더 압축하기


  • Power Automate로 매주 반복되는 엑셀 업무 자동화하기: 메일 첨부파일 저장부터 알림까지

    Power Automate로 매주 반복되는 엑셀 업무 자동화하기: 메일 첨부파일 저장부터 알림까지

    매주 같은 엑셀 파일을 받고 있다면, 먼저 이 업무부터 자동화해 보세요

    직장에서는 비슷한 작업이 매일 또는 매주 반복됩니다. 예를 들어 거래처나 다른 부서에서 엑셀 파일을 메일로 받고, 첨부파일을 내려받아 특정 폴더에 저장한 뒤 담당자에게 “파일이 도착했습니다”라고 알려주는 식입니다.

    한 번 처리하는 데 2~3분밖에 걸리지 않더라도 매주 반복되면 이야기가 달라집니다. 특히 파일 이름을 바꾸거나 저장 위치를 확인하는 과정에서 실수가 생기기 쉽습니다.

    이 글에서는 Microsoft Power Automate (자세히 보기)를 이용해 다음과 같은 실제 업무 흐름을 자동화하는 방법을 예로 들어보겠습니다.

    메일 수신 → 엑셀 첨부파일 확인 → OneDrive 폴더에 저장 → 담당자에게 알림

    포인트는 자동화를 크게 만들지 않는 것입니다. 처음부터 여러 시스템을 연결하기보다, 사람이 매번 반복하는 한 가지 작업을 골라 자동화하면 오류를 확인하기도 쉽습니다.

    실제 장면: 월요일마다 하던 일을 자동화해 보기

    가령 매주 월요일 오전에 sales@company.example에서 주간 판매현황.xlsx라는 파일이 도착한다고 가정해 보겠습니다.

    기존에는 다음과 같이 처리했습니다.

    1. Outlook에서 메일을 확인합니다.
    2. 첨부파일을 클릭해 다운로드합니다.
    3. 회사 OneDrive의 ‘주간 판매현황’ 폴더를 엽니다.
    4. 파일을 저장합니다.
    5. 팀 메신저나 메일로 담당자에게 파일 도착 사실을 알립니다.

    Power Automate를 이용하면 사람이 하던 앞의 네 단계를 자동화하고, 마지막 알림까지 연결할 수 있습니다.

    중요한 것은 “메일이 왔다”가 아니라 “조건에 맞는 메일이 왔다”를 자동화의 시작점으로 삼는 것입니다.

    1단계. 자동화할 업무를 먼저 한 문장으로 정의하기

    Power Automate 화면부터 열기 전에 다음처럼 업무 규칙을 적어봅니다.

    “특정 발신자가 보낸 메일에 엑셀 첨부파일이 있으면 지정한 OneDrive 폴더에 저장하고 담당자에게 알린다.”

    이렇게 적으면 자동화 조건과 결과가 명확해집니다.

    구분 설정할 내용
    시작 조건 Outlook에 새 메일 도착
    필터 특정 발신자 + 첨부파일 있음
    처리 첨부파일을 OneDrive에 저장
    완료 알림 담당자에게 메일 또는 Teams 알림

    이 과정이 필요한 이유는 자동화가 실행되는 조건을 지나치게 넓게 잡으면 예상하지 않은 파일까지 저장될 수 있기 때문입니다.

    2단계. Power Automate에서 자동화 흐름 만들기

    Microsoft 365 환경에서 Power Automate에 접속한 뒤 자동화된 클라우드 흐름을 새로 만듭니다.

    흐름의 이름은 나중에 다른 자동화가 늘어나도 알아보기 쉽게 정합니다.

    예를 들어 다음처럼 작성할 수 있습니다.

    주간 판매현황 메일 → OneDrive 저장

    시작 트리거는 Outlook의 새 메일 수신과 관련된 항목을 선택합니다.

    여기서 모든 메일을 대상으로 설정하지 말고 발신자, 제목, 첨부파일 여부 등 실제 업무 규칙에 맞는 조건을 사용합니다.

    메일 수신부터 파일 저장까지 이어지는 업무 자동화 흐름

    3단계. 조건을 좁혀서 잘못된 파일 저장을 막기

    자동화에서 가장 중요한 부분 중 하나입니다.

    예를 들어 회사 메일함에 하루 30개의 메일이 들어온다고 해서 그중 첨부파일이 있는 모든 메일을 저장하면 곤란합니다.

    다음과 같이 조건을 좁힐 수 있습니다.

    • 발신자가 지정된 주소인지 확인
    • 첨부파일이 있는지 확인
    • 필요하다면 메일 제목에 ‘주간 판매현황’이 포함됐는지 확인
    • 필요하다면 첨부파일 확장자가 XLSX인지 확인

    예를 들어 실제 판단 구조는 다음과 같습니다.

    메일 도착
    ↓
    발신자 = sales@company.example ?
    ↓ YES
    첨부파일 있음 ?
    ↓ YES
    엑셀 파일인가?
    ↓ YES
    OneDrive에 저장

    이처럼 조건을 단계별로 나누면 나중에 문제가 발생했을 때 어느 조건에서 자동화가 멈췄는지 확인하기도 쉽습니다.

    4단계. 첨부파일을 OneDrive에 저장하기

    다음 작업에서는 메일에 포함된 첨부파일을 OneDrive의 특정 폴더에 생성합니다.

    예를 들어 폴더를 다음처럼 구성할 수 있습니다.

    OneDrive / 업무자동화 / 주간판매현황 / 2026

    Power Automate의 파일 생성 단계에서 저장할 폴더를 지정하고, 파일 이름과 파일 내용을 메일의 첨부파일 정보에서 가져옵니다.

    여기서 파일 이름을 무조건 고정하는 방식은 주의해야 합니다. 같은 이름의 파일이 매주 들어온다면 기존 파일을 덮어쓰거나 저장 과정에서 문제가 발생할 수 있기 때문입니다.

    예를 들어 날짜를 포함하는 방식으로 관리하면 파일을 구분하기 쉽습니다.

    주간판매현황_2026-10-05.xlsx
    주간판매현황_2026-10-12.xlsx
    주간판매현황_2026-10-19.xlsx

    다만 날짜 형식이나 파일명 변경이 회사 업무 규칙과 충돌하지 않는지 먼저 확인해야 합니다.

    5단계. 저장이 끝난 뒤 담당자에게 알림 보내기

    파일 저장까지만 자동화해도 반복 작업은 줄어들지만, 담당자가 다시 폴더를 확인해야 한다면 업무 흐름이 완전히 끝난 것은 아닙니다.

    마지막 단계로 Outlook 메일이나 Microsoft Teams 알림을 추가할 수 있습니다.

    예를 들어 자동화 결과는 다음과 같은 형태가 됩니다.

    [자동 알림]
    주간 판매현황 파일이 저장되었습니다.

    파일명: 주간판매현황_2026-10-05.xlsx
    저장 위치: OneDrive / 업무자동화 / 주간판매현황 / 2026

    이렇게 하면 담당자는 메일함과 공유 폴더를 번갈아 확인하지 않아도 됩니다.

    실제 자동화 전후를 비교하면 이렇게 달라집니다

    기존 방식 자동화 후
    메일을 직접 확인 메일 수신을 자동 감지
    첨부파일 다운로드 조건에 맞으면 자동 저장
    폴더를 찾아 이동 지정 폴더에 자동 생성
    담당자에게 별도 연락 저장 후 자동 알림

    자동화의 효과를 판단할 때는 “AI가 얼마나 똑똑한가”보다 사람이 반복해서 하던 클릭과 확인을 몇 단계 줄였는가를 보는 편이 현실적입니다.

    메일과 파일을 확인하며 업무를 처리하는 사무실 장면

    여기서 한 단계 더: 자동화에는 반드시 ‘실패했을 때’를 넣기

    처음 만드는 자동화에서는 성공하는 경우만 생각하기 쉽습니다. 하지만 실제 업무에서는 예외가 더 중요합니다.

    예를 들어 다음 상황이 발생할 수 있습니다.

    • 발신자의 메일 주소가 변경됨
    • 첨부파일이 누락됨
    • 엑셀 대신 PDF가 도착함
    • 파일 이름이 평소와 달라짐
    • OneDrive 저장 공간이나 권한에 문제가 발생함

    따라서 자동화 테스트를 할 때는 정상적인 메일 하나만 보내지 말고 일부러 예외 상황도 만들어보는 것이 좋습니다.

    예를 들어 테스트용으로 다음 세 통을 차례로 보내볼 수 있습니다.

    테스트 메일 예상 결과
    정상 발신자 + XLSX 첨부 저장 + 알림
    다른 발신자 + XLSX 첨부 자동화 대상에서 제외
    정상 발신자 + 첨부파일 없음 저장하지 않음

    이 테스트를 통과해야 실제 업무에 적용하는 것이 안전합니다.

    직장에서 특히 주의할 개인정보와 회사 자료

    Power Automate는 업무 시스템을 서로 연결하기 때문에 자동화 범위를 정할 때 회사의 보안 정책을 먼저 확인해야 합니다.

    특히 다음 자료는 개인적으로 판단해서 외부 AI 서비스에 입력하거나 다른 저장소로 복사하지 않는 것이 좋습니다.

    • 주민등록번호, 계좌번호 등 개인정보
    • 고객 연락처와 고객 식별정보
    • 인사평가, 급여 등 인사 관련 자료
    • 계약서와 영업기밀
    • 회사에서 외부 서비스 전송을 제한한 문서

    이번 예시처럼 회사 Microsoft 365 안에서 메일과 OneDrive를 연결하는 자동화라고 하더라도 조직의 관리자 설정이나 내부 보안 정책에 따라 사용 가능한 기능이 다를 수 있습니다.

    자동화 전에 “이 데이터를 자동으로 복사하고 저장해도 되는가?”를 먼저 확인하는 습관이 필요합니다.

    처음 자동화한다면 이 순서로 적용해 보세요

    1. 반복 빈도가 높은 업무 하나를 고릅니다.
      매일 또는 매주 반복되는 메일·파일 업무가 적합합니다.
    2. 사람이 하는 작업을 순서대로 적습니다.
      메일 확인 → 다운로드 → 저장 → 알림처럼 구체적으로 적습니다.
    3. 자동화 시작 조건을 하나로 좁힙니다.
      특정 발신자와 특정 제목 등으로 대상을 제한합니다.
    4. 저장 위치와 파일 이름 규칙을 정합니다.
      중복 파일이나 덮어쓰기가 발생하지 않도록 합니다.
    5. 정상·예외 테스트를 모두 합니다.
      잘못된 메일까지 처리하지 않는지 확인합니다.
    6. 작은 업무부터 실제 적용합니다.
      부서 전체의 중요한 업무보다 개인의 반복 업무로 시작하는 편이 관리하기 쉽습니다.

    FAQ

    Q1. Power Automate를 사용하려면 코딩을 알아야 하나요?

    이번 글에서 다룬 메일 수신과 파일 저장 같은 자동화는 시각적인 흐름 구성 방식으로 만들 수 있어 일반적인 업무 사용에 프로그래밍 지식이 반드시 필요한 것은 아닙니다. 다만 조직에서 사용하는 Microsoft 365 라이선스와 관리자 정책에 따라 사용할 수 있는 기능과 커넥터가 달라질 수 있습니다.

    Q2. 자동화가 실행되지 않으면 무엇부터 확인해야 하나요?

    먼저 흐름의 실행 기록에서 자동화 자체가 실행됐는지 확인합니다. 실행됐다면 발신자·제목·첨부파일 조건이 맞았는지, 이후 파일 생성 단계에서 권한이나 저장 경로 문제가 발생했는지를 순서대로 확인합니다. 처음부터 모든 설정을 다시 만드는 것보다 어느 단계까지 정상 실행됐는지를 확인하는 것이 빠릅니다.

    Q3. 회사 메일에 있는 개인정보도 자동화해도 되나요?

    자동화할 수 있다는 것과 자동화해도 된다는 것은 별개의 문제입니다. 개인정보나 고객·인사·계약 관련 자료가 포함된 경우에는 회사의 개인정보 보호 및 정보보안 규정, Microsoft 365 관리자 정책을 먼저 확인해야 합니다. 특히 자동화 과정에서 자료가 외부 서비스로 전송되는 구조라면 별도의 검토가 필요합니다.

    정리하면, Power Automate를 처음 적용할 때는 거창한 업무 시스템부터 자동화할 필요가 없습니다. 매주 반복되는 “메일 확인 → 첨부파일 저장 → 담당자 알림”처럼 규칙이 명확한 업무 하나를 골라 조건을 좁게 설정하고, 정상·예외 테스트까지 마치는 것이 실전적인 출발점입니다.


  • Gemini로 직장인의 피벗 테이블 자동 생성하기: 5분 만에 시작하는 법

    Gemini로 직장인의 피벗 테이블 자동 생성하기: 5분 만에 시작하는 법

    매출 데이터 500줄, 피벗 테이블을 직접 만들지 않아도 됩니다

    월말마다 부서별 매출이나 상품별 실적을 정리하는 직장인이라면 비슷한 작업을 반복하게 됩니다. 엑셀 파일을 열고, 데이터 범위를 잡고, 행과 열에 어떤 항목을 넣을지 결정한 뒤 피벗 테이블을 만드는 과정입니다.

    그런데 이 작업에서 시간이 가장 많이 걸리는 부분은 계산 자체가 아닙니다. 어떤 기준으로 데이터를 묶어야 원하는 보고서가 나오는지 정하고, 그 설정을 직접 입력하는 과정입니다.

    Gemini를 활용하면 이 과정을 자연어로 지시할 수 있습니다. 다만 한 가지를 먼저 구분해야 합니다. 현재 Google이 안내하는 Gemini의 피벗 테이블 생성 기능은 (자세히 보기) (자세히 보기)(자세히 보기)Google Sheets 안의 Gemini 기능입니다. 반면 Gemini 웹 앱에서는 스프레드시트 파일을 업로드해 데이터를 분석하고 차트를 만드는 방식으로 활용할 수 있습니다. 따라서 엑셀 파일을 가지고 있다면 Google Sheets로 가져온 뒤 Gemini를 이용하는 방법이 가장 따라 하기 쉽습니다.

    아래에서는 실제 업무에서 흔히 볼 수 있는 매출 데이터를 예로 들어 처음부터 결과 확인까지 진행해 보겠습니다.

    1. 먼저 이런 형태의 데이터를 준비합니다

    예를 들어 아래와 같은 판매 데이터가 있다고 가정해 보겠습니다.

    판매일 지역 영업팀 상품 수량 매출
    2026-09-01 서울 A팀 노트북 3 3,600,000
    2026-09-01 경기 B팀 모니터 5 1,250,000
    2026-09-02 서울 A팀 모니터 4 1,000,000
    2026-09-02 부산 C팀 노트북 2 2,400,000

    실제 파일에서는 수백 줄이 더 있다고 생각하면 됩니다.

    이번에 확인하려는 것은 단순한 총매출이 아닙니다.

    • 지역별 매출은 얼마인지
    • 영업팀별 실적 차이는 어떤지
    • 상품별 매출을 비교하면 어떤 결과가 나오는지

    이런 질문을 한 번에 볼 수 있도록 피벗 테이블을 만들어 보겠습니다.

    2. 엑셀 파일을 Google Sheets로 가져옵니다

    기존에 .xlsx 엑셀 파일이 있다면 Google Drive에 올린 후 Google Sheets에서 열어 사용할 수 있습니다.

    여기서 중요한 점은 Gemini가 일반적인 엑셀 데스크톱 프로그램 안에서 자동으로 피벗 테이블을 만들어 주는 것과는 다르다는 것입니다. 이 글에서 사용하는 방법은 엑셀 데이터를 Google Sheets 환경으로 가져온 다음 Sheets의 Gemini에게 작업을 요청하는 방식입니다.

    Google Sheets의 Gemini는 현재 표 생성, 수식 작성, 데이터 분석뿐 아니라 피벗 테이블 생성과 필터·서식 등의 작업을 자연어로 요청할 수 있도록 제공되고 있습니다. 기능은 계정과 요금제, 제공 범위에 따라 달라질 수 있습니다.

    3. 피벗 테이블을 만들기 전에 Gemini에게 이렇게 입력합니다

    데이터가 들어 있는 Google Sheets를 열고 Gemini 기능을 실행합니다. 그다음 다음과 같이 요청해 보세요.

    현재 시트의 판매 데이터를 기준으로 피벗 테이블을 만들어 주세요.

    행에는 지역, 열에는 상품을 배치하고 값에는 매출의 합계를 사용해 주세요.

    지역별·상품별 매출을 비교할 수 있도록 별도의 피벗 테이블로 만들어 주세요.

    원본 데이터는 변경하지 말고 새 위치에 생성해 주세요.

    여기서 마지막 문장이 생각보다 중요합니다.

    “원본 데이터는 변경하지 말고 새 위치에 생성해 주세요.”

    AI에게 단순히 “피벗 테이블 만들어 줘”라고 요청하는 것보다 결과물을 어디에 만들지까지 지정하면 원본 데이터와 분석 결과를 구분하기 쉽습니다.

    원본 데이터가 피벗 테이블 결과로 정리되는 과정을 보여주는 일러스트

    4. Gemini가 만든 결과는 이렇게 확인합니다

    예를 들어 Gemini가 다음과 같은 구조의 피벗 테이블을 생성했다고 가정해 보겠습니다.

    지역 노트북 모니터 기타 총합계
    서울 12,600,000 4,100,000 800,000 17,500,000
    경기 8,400,000 6,250,000 1,100,000 15,750,000
    부산 7,200,000 3,600,000 900,000 11,700,000

    원본 데이터에서는 판매 건별로 흩어져 있던 숫자가 지역과 상품이라는 두 기준으로 다시 정리됐습니다.

    이제 여기에서 한 단계 더 요청할 수 있습니다.

    방금 만든 피벗 테이블에서 총매출이 높은 지역부터 정렬해 주세요. 그리고 지역별 총매출을 비교할 수 있는 막대 차트도 만들어 주세요.

    Google은 Gemini가 Sheets에서 데이터 분석과 차트 생성, 피벗 테이블 생성 등의 작업을 지원한다고 안내하고 있습니다.

    따라서 피벗 테이블을 만든 뒤 다시 차트를 직접 선택하고 범위를 지정하는 작업까지 줄일 수 있습니다.

    5. 결과가 마음에 들지 않을 때는 다시 처음부터 만들 필요가 없습니다

    실무에서는 첫 결과가 항상 원하는 형태와 일치하지 않습니다. 예를 들어 “상품별 매출”을 보고 싶었는데 Gemini가 지역을 열 방향으로 배치했다면 전체 피벗 테이블을 삭제할 필요가 없습니다.

    다음처럼 수정 요청을 해보세요.

    현재 피벗 테이블의 구조를 변경해 주세요.

    행은 영업팀, 열은 지역으로 바꾸고 값은 매출 합계로 유지해 주세요.

    팀별로 어느 지역에서 매출이 많이 발생했는지 비교하는 목적입니다.

    또 다른 예입니다.

    매출 합계가 아니라 수량의 합계를 기준으로 동일한 형태의 피벗 테이블을 하나 더 만들어 주세요. 기존 결과는 유지해 주세요.

    이렇게 분석 목적 → 행 → 열 → 값 → 기존 결과 유지 여부를 함께 적어 주면 결과를 검토하기가 훨씬 편해집니다.

    6. 대부분 놓치는 부분: “무엇을 계산할지”보다 “왜 만드는지”를 알려주세요

    피벗 테이블을 AI에게 맡길 때 단순히 열 이름만 나열하는 것보다 분석 목적을 한 문장 넣는 것이 좋습니다.

    예를 들어 다음 두 요청을 비교해 보겠습니다.

    요청 차이
    “지역별 매출 피벗 테이블 만들어 줘.” 결과 구조가 여러 형태로 해석될 수 있음
    “지역별 실적을 비교해서 영업회의에 사용할 피벗 테이블을 만들어 줘.” 비교 목적을 명확하게 전달

    더 구체적으로는 다음처럼 작성할 수 있습니다.

    월간 영업회의에서 지역별 실적을 비교하려고 합니다. 판매 데이터를 사용해 지역별 매출 합계를 비교하는 피벗 테이블을 만들고, 상품별 매출도 함께 확인할 수 있도록 구성해 주세요. 원본 데이터는 수정하지 마세요.

    이 방식의 장점은 AI에게 단순한 표 생성이 아니라 표를 사용하는 업무 상황을 알려준다는 데 있습니다.

    회의에서 스프레드시트의 매출 데이터를 확인하는 직장인들의 모습

    7. 5분 실전 순서로 정리하면

    ① 엑셀 파일 준비

    첫 행에 열 제목이 있고 각 행에 하나의 판매 기록이 들어 있는 형태로 준비합니다. 병합된 셀이나 중간에 삽입된 소계 행이 있다면 먼저 정리하는 것이 좋습니다.

    ② Google Sheets로 가져오기

    엑셀 파일을 Google Sheets에서 열어 데이터가 제대로 표시되는지 확인합니다.

    ③ Gemini 실행

    시트의 Gemini 기능을 열고 분석 목적을 먼저 적습니다.

    ④ 피벗 구조 지정

    “행”, “열”, “값”을 구체적으로 지정합니다. 필요하면 “값은 매출 합계”, “수량 평균”처럼 집계 방법까지 적습니다.

    ⑤ 결과 검증

    AI가 만든 표를 그대로 보고서에 붙이지 말고 원본의 총합과 피벗 테이블의 총합이 일치하는지 확인합니다.

    특히 금액 데이터는 AI가 계산을 대신해 줬다는 사실과 계산 결과가 정확하다는 사실을 같은 것으로 보면 안 됩니다. 실제 업무 자료라면 몇 개의 원본 행을 직접 대조하고 총합을 확인하는 절차가 필요합니다.

    8. 엑셀 파일을 Gemini 웹 앱에 바로 올리는 방법은?

    Google의 Gemini 웹 앱에서는 스프레드시트를 포함한 다양한 파일을 업로드해 내용을 분석할 수 있습니다. 컴퓨터에서는 Gemini 웹 앱에서 파일 추가를 선택하고 파일을 업로드하는 방식입니다. Google은 하나의 프롬프트에 최대 10개의 지원 파일을 추가할 수 있다고 안내하고 있으며, 일반 파일의 크기 제한 등은 계정과 기능에 따라 적용됩니다.

    예를 들어 엑셀 파일을 Gemini에 올린 뒤 다음처럼 요청할 수 있습니다.

    첨부한 판매 데이터를 분석해 주세요. 지역별 매출 합계와 상품별 매출 합계를 계산하고, 피벗 테이블로 만들었을 때 어떤 행·열·값 구성이 적절한지 제안해 주세요.

    이 방법은 엑셀 파일을 분석하고 피벗 테이블의 구조를 설계하는 단계에 유용합니다. 실제 Google Sheets 안에서 피벗 테이블을 생성하는 작업은 Sheets의 Gemini 기능을 사용하는 방식으로 구분하는 것이 정확합니다. Gemini 웹 앱은 업로드한 스프레드시트에서 차트를 만드는 기능도 제공합니다.

    9. 회사 데이터를 사용할 때는 여기부터 확인하세요

    업무 효율보다 먼저 확인할 것은 회사의 정보보안 규정입니다.

    고객명, 전화번호, 이메일, 주민등록번호, 계좌정보, 계약서 내용, 미공개 매출, 인사정보처럼 외부 AI 서비스에 입력해서는 안 되는 정보가 있다면 그대로 업로드하지 않아야 합니다.

    예를 들어 실제 데이터가 다음과 같다면:

    고객명 / 고객 전화번호 / 계약금액 / 담당자 / 계약일

    피벗 분석에 고객명이 필요하지 않다면 다음처럼 바꾼 뒤 사용하는 방법을 검토할 수 있습니다.

    고객ID / 지역 / 계약금액 / 담당팀 / 계약월

    단, 이것이 회사 규정을 자동으로 충족한다는 의미는 아닙니다. 사내에서 Gemini 또는 외부 AI 도구의 업무 데이터 사용을 허용하는지 먼저 확인해야 합니다.

    Google Workspace의 조직용 Gemini 환경에서는 조직의 기존 보안 및 관리 정책이 적용되는 범위가 있지만, 개인 계정으로 사용하는 Gemini와 회사에서 관리되는 Workspace 환경은 동일하게 취급하면 안 됩니다.

    10. 바로 복사해서 사용할 수 있는 피벗 테이블 프롬프트

    업무에 맞게 아래 문장에서 항목만 바꿔 사용하면 됩니다.

    현재 시트의 데이터를 분석해 주세요.

    목적은 [월간 영업회의/재고회의/마케팅 보고서]에서 [지역별/팀별/상품별] 실적을 비교하는 것입니다.

    피벗 테이블을 새 위치에 만들어 주세요.

    행: [지역]

    열: [상품]

    값: [매출]의 합계

    원본 데이터는 변경하지 말아 주세요.

    완성 후 총합계가 원본 데이터의 총매출과 일치하는지도 확인해 주세요.

    마지막 줄까지 넣으면 단순히 “표를 만들어 달라”는 요청에서 끝나지 않고 결과 검증까지 포함할 수 있습니다.

    FAQ

    Q1. 엑셀을 쓰는데 꼭 Google Sheets로 옮겨야 하나요?

    이 글에서 설명한 Gemini의 피벗 테이블 자동 생성 기능을 사용하려면 Google Sheets의 Gemini 기능을 이용하는 방식이 가장 명확합니다. Gemini 웹 앱에 엑셀 파일을 업로드해 분석할 수는 있지만, 이것을 Microsoft Excel 데스크톱 프로그램의 피벗 테이블을 Gemini가 직접 조작하는 기능과 동일하게 보면 안 됩니다. Google은 Sheets에서 Gemini가 피벗 테이블을 생성할 수 있다고 안내하고 있습니다.

    Q2. Gemini가 만든 피벗 테이블의 숫자를 그대로 보고서에 사용해도 되나요?

    중요한 보고서라면 바로 사용하기보다 원본 데이터의 합계와 결과의 총합을 대조하는 것이 좋습니다. 특히 빈 셀, 텍스트로 저장된 숫자, 중복 행, 필터가 적용된 데이터가 있으면 결과가 예상과 다를 수 있습니다. AI가 만든 결과도 최종 보고 전에는 사람이 검증하는 것이 안전합니다.

    Q3. 회사의 매출 엑셀 파일을 개인 Gemini에 올려도 되나요?

    회사 규정에서 허용하는지 먼저 확인해야 합니다. 고객정보나 비공개 재무정보처럼 외부 서비스에 입력해서는 안 되는 정보라면 업로드하지 않는 것이 원칙입니다. 필요한 분석만 남기도록 데이터를 비식별화하거나 회사가 승인한 Workspace 환경을 사용하는 방법을 검토할 수 있습니다. 직장·학교 계정의 Drive 파일 사용 여부 역시 조직 관리자의 설정에 영향을 받을 수 있습니다.

    정리하면, Gemini를 피벗 테이블의 “계산기”로만 사용하는 것보다 분석 목적과 원하는 표의 구조를 함께 알려주는 것이 실무에서 더 유용합니다. 엑셀 데이터를 Google Sheets로 가져오고, 행·열·값과 분석 목적을 한 번에 입력한 뒤, 결과의 총합을 검증하는 흐름만 익혀 두면 반복적인 월간 실적 정리 업무를 훨씬 짧은 과정으로 바꿀 수 있습니다.

    예시 데이터와 결과 합계를 일치시켜줘
    실제 입력과 결과를 더 명확히 보여줘


  • 엑셀 데이터를 Gemini로 정리하고 시각화하는 5단계 실전 가이드

    엑셀 데이터를 Gemini로 정리하고 시각화하는 5단계 실전 가이드

    엑셀 파일을 열어보면 숫자와 날짜가 뒤섞여 있고, 빈칸이나 중복 행까지 섞여 있어 정리부터 막막한 경우가 많습니다. 특히 월별 매출이나 부서별 실적처럼 행이 수백 개를 넘어가면 직접 필터를 걸고 피벗 테이블을 만드는 데도 시간이 걸립니다.

    이럴 때 Gemini에 엑셀 파일을 직접 올려 데이터의 구조를 확인하고, 정리 기준을 만든 뒤 차트까지 생성하는 방법을 활용할 수 있습니다. 현재 Gemini 웹 앱은 스프레드시트 파일을 업로드해 분석할 수 있고, 업로드한 데이터를 바탕으로 차트를 만들고 차트 유형이나 라벨을 수정할 수도 있습니다. :contentReference[oaicite:0]{index=0}

    다만 여기서 한 가지 구분할 필요가 있습니다. 이 글에서 말하는 방법은 엑셀 파일을 Gemini 웹 앱에 업로드해 분석·시각화한 뒤 결과를 엑셀 업무에 활용하는 방식입니다. 엑셀 화면 안에 Gemini가 항상 직접 들어가 있는 것은 아닙니다. Google Sheets에서는 Gemini가 표·수식·피벗 테이블·차트 등을 직접 지원하는 별도의 기능이 제공됩니다. :contentReference[oaicite:1]{index=1}

    1단계. 먼저 작은 엑셀 데이터로 시작하기

    처음부터 회사의 전체 매출 파일을 올릴 필요는 없습니다. 먼저 개인정보와 민감정보를 제거한 복사본을 만들어 연습하는 것이 좋습니다.

    예를 들어 다음과 같은 월별 판매 데이터가 있다고 가정해 보겠습니다.

    날짜 부서 상품 판매수량 매출
    2026-09-01 온라인 A상품 18 540000
    2026-09-02 오프라인 B상품 11 330000
    2026-09-03 온라인 B상품 25 750000
    2026-09-04 온라인 A상품 7 210000

    이 파일을 저장한 다음 Gemini 웹 앱에서 파일 업로드를 선택합니다. Gemini는 스프레드시트를 포함한 다양한 파일을 업로드해 분석할 수 있으며, 현재 안내 기준으로 한 번의 프롬프트에 최대 10개 파일을 업로드할 수 있고 일반 파일의 크기는 최대 100MB입니다. 실제 사용 가능 범위는 계정과 기능 제공 조건에 따라 달라질 수 있습니다. :contentReference[oaicite:2]{index=2}

    파일을 올린 뒤 처음부터 “차트 만들어줘”라고 요청하지 말고 데이터의 상태부터 확인합니다.

    이 엑셀 데이터를 먼저 점검해 주세요.

    1. 열별 데이터 의미를 설명하고
    2. 빈 셀, 중복 행, 날짜 형식 오류, 숫자가 문자로 저장된 셀이 있는지 확인하고
    3. 분석 전에 수정해야 할 항목을 표로 정리해 주세요.
    4. 실제 데이터를 임의로 수정하지 말고, 수정이 필요한 이유도 함께 설명해 주세요.

    예를 들어 Gemini가 “매출 열에 숫자가 아닌 값이 포함되어 있는지 확인이 필요하며, 날짜 열은 동일한 날짜 형식으로 통일하는 것이 좋다”고 알려준다면 그 내용을 확인한 후 엑셀에서 실제 수정 여부를 결정합니다.

    2단계. 데이터를 정리할 기준부터 요청하기

    여기서 시간을 줄이는 방법은 “정리해 줘”라고 막연하게 요청하지 않는 것입니다. 어떤 상태를 정상 데이터로 볼지 기준을 함께 지정합니다.

    이 데이터를 월별 매출 분석에 사용할 예정입니다.

    다음 기준으로 정리 방안을 만들어 주세요.

    – 날짜는 YYYY-MM-DD 형식
    – 판매수량과 매출은 숫자 형식
    – 빈 매출은 임의로 0으로 바꾸지 않기
    – 중복 행은 삭제하지 말고 중복 가능성이 있는 행 번호를 알려주기
    – 부서명과 상품명은 표기가 다른 항목이 있는지 확인하기
    – 수정 전과 수정 후의 차이를 확인할 수 있도록 정리 목록을 만들어 주세요.

    이 방식의 장점은 AI가 데이터를 임의로 “정상화”하는 것을 줄일 수 있다는 점입니다.

    예를 들어 온라인, 온라인팀, 온라인 팀이 섞여 있다면 Gemini가 같은 부서일 가능성을 발견할 수 있습니다. 하지만 실제로 같은 조직인지 여부는 회사의 데이터 기준을 확인해야 합니다.

    즉, Gemini에게 판단을 맡기되 업무 규칙 자체를 AI가 임의로 결정하게 하지 않는 것이 중요합니다.

    엑셀 데이터를 점검하고 정리 기준을 확인하는 과정

    3단계. 정리 결과를 표 형태로 검증하기

    데이터를 정리했다면 곧바로 차트를 만들지 말고 한 번 더 검증합니다. 특히 AI가 계산한 결과는 중요한 보고서에 그대로 사용하기보다 원본 엑셀의 합계와 대조하는 편이 안전합니다.

    다음과 같이 요청할 수 있습니다.

    정리된 데이터를 기준으로 다음 검증표를 만들어 주세요.

    ① 전체 행 수
    ② 전체 매출 합계
    ③ 부서별 매출 합계
    ④ 상품별 매출 합계
    ⑤ 누락 또는 확인이 필요한 행

    각 합계가 어떤 열과 행을 기준으로 계산되었는지도 설명해 주세요.

    예를 들어 결과가 다음처럼 나온다면 업무자가 확인하기 쉽습니다.

    구분 매출 확인
    온라인 15,420,000원 원본 합계와 대조
    오프라인 11,870,000원 원본 합계와 대조
    전체 27,290,000원 부서별 합계와 일치 여부 확인

    여기서 중요한 것은 숫자 자체보다 검증 가능한 형태로 결과를 요청하는 것입니다. “매출이 얼마인가요?”보다 “전체 합계와 부서별 합계를 각각 보여주고 서로 일치하는지 확인해 주세요”라고 요청하는 편이 실제 업무에 활용하기 좋습니다.

    4단계. 목적에 맞는 차트를 Gemini에 요청하기

    이제 시각화 단계입니다. Gemini 웹 앱에서는 업로드한 스프레드시트를 기반으로 차트를 만들고, 생성된 차트를 확대해서 확인하거나 차트 유형과 라벨 등을 수정할 수 있습니다. :contentReference[oaicite:3]{index=3}

    예를 들어 부서별 매출을 비교하려면 다음처럼 입력합니다.

    부서별 매출을 비교하는 막대 차트를 만들어 주세요.

    – 가로축: 부서
    – 세로축: 매출
    – 매출이 큰 부서부터 정렬
    – 금액 단위가 한눈에 보이도록 표시
    – 차트 제목: 부서별 매출 비교
    – 범례가 불필요하다면 제거해 주세요.

    월별 추이를 보고 싶다면 차트 목적을 바꿉니다.

    날짜별 매출 추이를 확인할 수 있도록 선 차트를 만들어 주세요.

    날짜를 가로축으로 사용하고 매출을 세로축으로 사용하세요. 날짜가 일 단위라면 월별 합계로 묶었을 때도 비교할 수 있는 방법을 함께 제안해 주세요.

    이렇게 하면 “예쁜 차트”보다 무엇을 비교하려는지가 먼저 정해집니다.

    매출 데이터를 차트로 확인하며 업무 보고 자료를 준비하는 장면

    5단계. 차트를 엑셀 업무에 맞게 다듬기

    Gemini가 만든 시각화 결과를 그대로 보고서에 붙이는 것보다 마지막으로 엑셀에서 확인할 부분이 있습니다.

    첫째, 차트의 합계가 원본 데이터와 맞는지 확인합니다.

    둘째, 단위를 확인합니다. 27,290,000원처럼 표시할지 2,729만원처럼 표시할지는 보고 대상에 따라 달라집니다.

    셋째, 차트가 전달하려는 내용과 맞는지 봅니다. 시간에 따른 변화는 선 차트가 이해하기 쉽고, 여러 부서의 크기를 비교하는 경우에는 막대 차트가 적합한 경우가 많습니다.

    넷째, 원본 데이터와 분석용 데이터를 분리합니다. 원본 파일은 그대로 보관하고, Gemini에 업로드하는 파일은 필요 없는 열을 제거한 복사본으로 만드는 방식이 안전합니다.

    실제로 가장 유용한 요청 방식

    5단계를 한 번에 묶어 사용하고 싶다면 다음 프롬프트를 복사해 사용할 수 있습니다.

    첨부한 엑셀 파일을 업무용 매출 분석 데이터로 검토해 주세요.

    1. 먼저 데이터 구조와 오류 가능성을 확인합니다.
    2. 빈 셀, 중복, 날짜 형식, 숫자 형식 문제를 구분합니다.
    3. 임의로 데이터를 수정하지 말고 수정이 필요한 항목을 알려줍니다.
    4. 검증이 끝난 데이터를 기준으로 부서별 매출과 월별 매출을 계산합니다.
    5. 부서별 비교에는 막대 차트, 시간 흐름에는 선 차트를 제안합니다.
    6. 각 차트의 데이터 범위와 계산 기준을 설명합니다.
    7. 마지막에 사람이 원본 엑셀과 대조해야 할 항목을 체크리스트로 만들어 주세요.

    대부분 놓치는 한 단계: AI에게 ‘결론’보다 ‘검증 과정’을 먼저 묻기

    엑셀 업무에서 Gemini를 사용할 때 가장 쉽게 생기는 문제는 그럴듯한 숫자와 문장이 나왔다는 이유로 결과를 바로 보고서에 사용하는 것입니다.

    예를 들어 “온라인 매출이 전체의 58%로 가장 높습니다”라는 답을 받았다면 끝내지 말고 다음 질문을 한 번 더 던져보세요.

    방금 계산한 58%가 어떤 분모와 분자를 사용한 결과인지 보여주세요. 원본 데이터에서 제외된 행이 있다면 함께 알려주세요.

    이 한 단계가 있으면 AI의 답을 단순히 받아 적는 작업에서 벗어나 검증 가능한 업무 결과로 바꿀 수 있습니다.

    개인정보와 사내 데이터는 이렇게 다루기

    엑셀 파일을 Gemini에 업로드하기 전에 회사의 AI 사용 규정을 확인해야 합니다. 특히 고객명, 전화번호, 이메일, 주민등록번호, 계좌정보, 인사정보, 거래처의 비공개 정보처럼 외부 서비스에 제공해서는 안 되는 데이터가 포함되어 있다면 그대로 업로드하지 않는 것이 안전합니다.

    가능하면 분석용 복사본을 만들고 다음처럼 처리합니다.

    • 고객 이름 → 고객001, 고객002처럼 비식별화
    • 전화번호·이메일 → 삭제
    • 주민등록번호·계좌번호 → 삭제
    • 내부 프로젝트명 → 업무에 필요한 경우에도 회사 규정 확인
    • 불필요한 개인정보 열 → 아예 분석용 파일에서 제거

    직장 또는 학교 Google 계정으로 Gemini를 사용하는 경우 Google Drive 파일을 Gemini에서 활용하려면 조직 관리자가 관련 앱 접근을 허용해야 할 수 있습니다. 따라서 회사 계정이라면 개인 계정과 동일한 방식으로 사용할 수 있다고 가정하지 않는 것이 좋습니다. :contentReference[oaicite:4]{index=4}

    FAQ

    Q1. 엑셀 파일을 Gemini에 바로 올릴 수 있나요?

    네. Gemini 웹 앱은 스프레드시트를 포함한 파일 업로드와 분석을 지원하며, 현재 Google 공식 안내에는 XLSX도 지원되는 파일 형식으로 명시되어 있습니다. 업로드한 스프레드시트를 기반으로 차트를 생성하는 기능도 제공됩니다. :contentReference[oaicite:5]{index=5}

    Q2. Gemini가 엑셀 파일의 데이터를 자동으로 완벽하게 정리해 주나요?

    그렇게 가정하면 안 됩니다. Gemini가 빈 셀이나 형식 문제, 중복 가능성을 찾아주는 데 활용할 수 있지만, 같은 부서인지 여부나 누락된 값의 의미처럼 업무 규칙이 필요한 판단은 사람이 확인해야 합니다. 특히 보고서에 사용할 숫자는 원본 엑셀과 합계를 대조하는 절차를 두는 것이 좋습니다.

    Q3. 회사 매출 엑셀을 그대로 업로드해도 되나요?

    회사 규정에서 허용하는지 먼저 확인해야 합니다. 고객 개인정보나 영업상 비밀처럼 외부 AI 서비스에 입력해서는 안 되는 정보가 있다면 제거하거나 비식별화한 분석용 파일을 사용하는 것이 안전합니다. 회사 계정에서는 조직의 Gemini 사용 정책과 관리자 설정도 확인해야 합니다. :contentReference[oaicite:6]{index=6}

    마무리

    엑셀 데이터 작업에서 Gemini를 활용하는 방법은 복잡한 분석 기법을 새로 배우는 것보다 ① 파일 준비 → ② 오류 확인 → ③ 정리 기준 설정 → ④ 결과 검증 → ⑤ 목적에 맞는 차트 생성의 순서로 접근하면 따라 하기 쉽습니다.

    특히 “차트 만들어줘” 한마디로 끝내기보다 어떤 데이터를 사용했고, 어떻게 계산했으며, 무엇을 사람이 확인해야 하는지까지 요청하는 것이 실무 활용에서 차이를 만듭니다.

    처음에는 개인정보가 없는 간단한 판매 데이터 몇십 행으로 연습한 뒤, 실제 업무에 적용할 때 회사의 AI 사용 규정과 데이터 보안 기준을 확인하는 방식으로 범위를 넓히는 것이 안전합니다.


  • 엑셀에서 Perplexity로 데이터 분석하기 — 직장인이 바로 따라 하는 5단계 자동화 방법

    엑셀에서 Perplexity로 데이터 분석하기 — 직장인이 바로 따라 하는 5단계 자동화 방법

    엑셀에서 Perplexity로 데이터 분석하기 — 직장인이 바로 따라 하는 5단계 자동화 방법

    엑셀 분석이 어려운 이유는 ‘수식’보다 질문을 만들기 어렵기 때문입니다

    매출이나 고객 데이터를 엑셀로 정리해 놓았지만, 막상 이런 질문을 받으면 손이 멈추는 경우가 있습니다.

    “지난달보다 매출이 떨어진 이유를 찾아서 팀장님께 세 줄로 보고해 주세요.”

    엑셀을 잘 다루는 사람이라면 피벗 테이블이나 함수로 직접 분석할 수 있습니다. 하지만 모든 직장인이 데이터 분석을 전문적으로 배워야 하는 것은 아닙니다.

    Perplexity에 엑셀 파일을 올리고, 무엇을 분석할지와 결과를 어떤 형태로 보여줄지만 구체적으로 지시하는 방식으로 진입 장벽을 낮출 수 있습니다. Perplexity는 XLSX와 CSV 파일 업로드 및 파일 분석을 지원하고 있습니다. 다만 파일 업로드와 분석 한도는 사용 중인 요금제에 따라 달라질 수 있습니다.

    이번 글에서는 복잡한 데이터 분석 프로그램 대신 엑셀 → Perplexity → 분석 결과 → 엑셀 확인이라는 단순한 흐름으로 실제 예제를 따라가 보겠습니다.

    먼저 연습용 엑셀 데이터를 만들어 보세요

    아래 표를 엑셀에 그대로 붙여 넣으면 됩니다. 실제 회사 자료를 사용하기 전에 연습용 데이터로 먼저 테스트하는 것을 권합니다.

    날짜 제품 판매수량 단가 광고비 채널
    9/1 무선마우스 18 29000 30000 온라인
    9/2 키보드 12 59000 25000 온라인
    9/3 무선마우스 25 29000 40000 온라인
    9/4 키보드 8 59000 15000 오프라인
    9/5 노트북거치대 21 39000 35000 온라인
    9/6 무선마우스 9 29000 10000 오프라인
    9/7 키보드 16 59000 30000 온라인
    9/8 노트북거치대 15 39000 20000 온라인
    9/9 무선마우스 28 29000 50000 온라인
    9/10 키보드 7 59000 10000 오프라인

    이 표를 sales_sample.xlsx 같은 이름으로 저장합니다.

    여기서 확인하고 싶은 것은 단순한 합계가 아닙니다. 예를 들어 제품별 매출, 채널별 차이, 광고비 대비 매출 규모, 추가로 확인해야 할 항목까지 알아보겠습니다.

    1단계. 엑셀 데이터를 분석하기 좋은 형태로 정리합니다

    Perplexity에 파일을 올리기 전에 엑셀의 첫 번째 행을 열 이름으로 만들어 주세요.

    예를 들어 다음처럼 되어 있어야 합니다.

    • 날짜
    • 제품
    • 판매수량
    • 단가
    • 광고비
    • 채널

    중간에 합계 행을 넣거나 제목을 여러 줄로 만드는 것보다 한 행 = 한 거래 기록에 가깝게 정리하는 편이 분석하기 쉽습니다.

    특히 숫자 열에 ‘29,000원’처럼 문자를 섞기보다는 숫자 자체를 넣고 엑셀의 셀 서식으로 원화 표시를 하는 것이 좋습니다.

    2단계. Perplexity에 엑셀 파일을 올립니다

    엑셀 파일을 AI에 업로드하고 분석하는 과정을 보여주는 일러스트

    Perplexity의 입력창에서 파일을 첨부한 뒤 방금 만든 sales_sample.xlsx를 선택합니다.

    여기서 바로 “분석해 줘”라고 입력하지 않는 것이 좋습니다. 결과의 품질은 무엇을 분석할지 질문에 얼마나 구체적으로 적느냐에 따라 크게 달라지기 때문입니다.

    첫 질문은 다음처럼 입력해 보세요.

    첨부한 엑셀 파일의 데이터를 먼저 확인해 주세요.
    1. 행과 열의 의미를 정리하고
    2. 각 열의 데이터 형식을 확인하고
    3. 결측값이나 이상하게 보이는 값이 있는지 찾아주세요.
    아직 결론을 내리지 말고 데이터 상태만 표로 정리해 주세요.

    이렇게 하면 처음부터 AI가 임의로 결론을 만들어내는 것을 줄이고, 분석 대상 자체가 제대로 읽혔는지 먼저 확인할 수 있습니다.

    3단계. ‘무엇이 궁금한지’를 숫자로 질문합니다

    데이터 확인이 끝났다면 두 번째 질문을 입력합니다.

    이 데이터를 기준으로 다음 항목을 계산해 주세요.

    ① 제품별 총매출 = 판매수량 × 단가
    ② 제품별 판매수량
    ③ 채널별 총매출
    ④ 광고비 대비 매출 규모
    ⑤ 제품별 매출 비중

    계산에 사용한 원본 열과 계산 방법도 함께 표시해 주세요.

    예상되는 결과는 다음과 같은 형태입니다.

    제품 판매수량 총매출 해석에 필요한 질문
    무선마우스 80 2,320,000원 온라인 판매 비중은?
    키보드 43 2,537,000원 높은 단가가 매출에 미친 영향은?
    노트북거치대 36 1,404,000원 광고비 대비 매출은?

    중요한 점은 AI가 제시한 숫자를 그대로 보고서에 붙여 넣는 것이 아닙니다. 엑셀에서 한두 개의 대표 숫자를 직접 계산해 결과가 맞는지 확인하는 과정이 필요합니다.

    4단계. 숫자에서 ‘업무에 쓸 수 있는 질문’으로 넘어갑니다

    여기서 대부분의 데이터 분석이 멈춥니다. “무선마우스 매출이 가장 높습니다” 정도의 결과만 얻고 끝나는 것입니다.

    하지만 실무에서는 그래서 무엇을 확인해야 하는가가 더 중요합니다.

    다음 질문을 이어서 입력해 보세요.

    단순히 매출이 높은 제품을 찾는 데서 끝내지 말고 다음을 분석해 주세요.

    1. 판매수량이 많은 제품과 매출이 높은 제품이 다른지
    2. 온라인과 오프라인의 제품별 판매 차이가 있는지
    3. 광고비가 높은 날의 판매량이 실제로 높은지
    4. 현재 데이터만으로 판단하면 안 되는 부분이 무엇인지

    각 항목마다 ‘데이터에서 확인되는 사실’과 ‘추가 확인이 필요한 가설’을 구분해서 작성해 주세요.

    이 질문의 차이가 큽니다.

    예를 들어 “광고비가 높을수록 판매량이 높다”라는 결과가 나오더라도 그것만으로 광고가 판매량을 증가시켰다고 결론 내리면 안 됩니다. 특정 제품을 많이 판매할 것으로 예상한 날에 광고비도 함께 늘렸을 가능성이 있기 때문입니다.

    즉, Perplexity에게 결론뿐 아니라 사실과 가설을 구분하라고 요구하는 것이 실무에서 활용할 때 한 단계 높은 방법입니다.

    5단계. 최종 결과를 ‘보고서 형태’로 다시 요청합니다

    엑셀 분석 결과를 바탕으로 업무 보고 내용을 확인하는 사무실 장면

    마지막으로 실제 업무에서 사용할 수 있는 형태로 정리하도록 요청합니다.

    지금까지 분석한 내용을 바탕으로 팀장 보고용 요약을 작성해 주세요.

    조건:
    – 핵심 숫자 3개만 먼저 제시
    – 제품별 차이를 짧게 설명
    – 데이터만으로 확정할 수 없는 내용은 별도로 표시
    – 추가로 확인할 데이터 3개 제시
    – 전체 분량은 300자 이내
    – 과장된 표현 없이 작성

    그러면 예를 들어 다음과 같은 형태의 결과를 얻을 수 있습니다.

    제품별 매출은 키보드 253.7만원, 무선마우스 232만원, 노트북거치대 140.4만원 순으로 나타났습니다. 판매수량은 무선마우스가 가장 많았지만 단가 차이로 키보드의 총매출이 더 높았습니다. 온라인 채널의 판매 비중이 높은 제품에서 광고비가 함께 증가하는 경향이 있으나, 현재 데이터만으로 광고비가 판매 증가의 원인이라고 판단하기는 어렵습니다. 향후 일자별 방문자 수, 광고 클릭 수, 주문 전환율을 함께 확인할 필요가 있습니다.

    이제 분석 결과를 그대로 복사하기보다 원본 엑셀과 숫자를 대조한 뒤 보고 자료에 활용하면 됩니다.

    직장인이 놓치기 쉬운 한 단계: 질문을 ‘검증 순서’로 나누세요

    Perplexity를 사용할 때 가장 유용한 방식은 거창한 프롬프트를 한 번에 만드는 것이 아닙니다.

    ① 데이터 확인 → ② 계산 → ③ 비교 → ④ 가설과 사실 구분 → ⑤ 보고서 작성 순서로 나누는 것입니다.

    한 번에 “이 엑셀을 분석해서 인사이트를 모두 알려줘”라고 요청하면 무엇을 기준으로 판단했는지 확인하기 어렵습니다.

    반대로 단계별로 질문하면 중간 결과를 확인하면서 잘못 읽은 열이나 계산 오류를 바로 수정할 수 있습니다.

    특히 회사에서 반복적으로 사용하는 월간 매출표라면 Perplexity의 프로젝트 기능을 활용해 관련 파일과 지침을 한곳에서 관리하는 방법도 있습니다. Perplexity는 프로젝트 작업 공간에서 파일을 관리하고 사용자 지침을 적용할 수 있다고 안내하고 있습니다. 다만 제공 기능과 한도는 계정 및 요금제에 따라 다를 수 있습니다.

    회사 엑셀 파일을 올리기 전에 꼭 확인할 것

    업무 효율보다 먼저 확인해야 할 것은 회사 데이터의 외부 AI 사용 가능 여부입니다.

    • 고객 이름, 전화번호, 이메일, 주소 등 개인정보가 포함되어 있으면 그대로 업로드하지 않습니다.
    • 거래처의 비공개 정보, 계약 금액, 내부 인사정보 등 외부 서비스 입력이 금지된 자료인지 확인합니다.
    • 사내 보안규정이나 AI 사용 가이드가 있다면 그 기준을 우선합니다.
    • 연습 단계에서는 실제 회사 자료 대신 임의의 숫자로 만든 샘플 파일을 사용합니다.
    • AI가 계산한 숫자는 중요한 보고 전에 원본 엑셀에서 일부 항목을 다시 계산해 확인합니다.

    특히 무료 또는 개인용 계정과 회사에서 승인한 기업용 환경은 데이터 처리와 관리 조건이 다를 수 있습니다. Perplexity도 요금제별 데이터 보호 및 파일 기능에 차이가 있다고 안내하고 있으므로, 회사 자료를 다룰 때는 조직에서 승인한 환경인지 확인하는 편이 안전합니다.

    이 방법으로 만들 수 있는 분석 업무

    같은 방식은 매출 데이터에만 한정되지 않습니다.

    엑셀 데이터 Perplexity에 요청할 수 있는 작업
    월별 매출 전월 대비 증감, 제품별 차이, 이상값 확인
    광고 성과 채널별 비용과 결과 비교, 추가 확인 항목 도출
    고객 문의 목록 문의 유형 분류, 빈도가 높은 문제 파악
    재고 현황 재고 부족 품목 확인, 우선 점검 목록 작성
    설문 결과 응답 항목별 분포와 주요 의견 정리

    다만 데이터의 양이나 구조가 복잡해질수록 AI 결과를 그대로 신뢰하기보다 원본 데이터와 계산식을 함께 확인해야 합니다. Perplexity의 파일 분석은 데이터를 탐색하고 요약하는 데 유용하지만, 회사의 공식 재무 시스템이나 ERP를 대체하는 용도로 생각해서는 안 됩니다.

    FAQ

    Q1. 엑셀 파일을 Perplexity에 올렸는데 분석 결과가 이상합니다.

    먼저 열 이름과 데이터 형식을 확인해 보세요. 날짜가 날짜가 아닌 문자로 저장되어 있거나 숫자 열에 빈칸·문자가 섞여 있으면 분석에 영향을 줄 수 있습니다. Perplexity에 “먼저 열별 데이터 형식과 결측값을 확인하고 분석하지 말라”고 요청한 뒤 문제를 확인하는 방법이 좋습니다.

    Q2. “분석해 줘”라고 했는데 결과가 너무 일반적입니다.

    분석 대상과 결과 형식을 구체적으로 지정하면 됩니다. 예를 들어 “매출을 분석해 줘” 대신 “제품별 총매출, 판매수량, 채널별 매출을 계산하고 상위 3개 제품과 추가 확인이 필요한 항목을 표로 보여줘”처럼 요청합니다. 특히 기간·비교 기준·계산 항목·출력 형식 네 가지를 넣으면 결과를 검토하기 쉬워집니다.

    Q3. 회사의 실제 엑셀을 그대로 올려도 되나요?

    회사 규정에서 허용하는 경우에만 사용해야 합니다. 개인정보나 영업상 비밀이 포함된 파일은 별도 승인 없이 개인용 AI 서비스에 업로드하지 않는 것이 안전합니다. 처음에는 위의 샘플처럼 가상의 데이터로 작업 순서를 익힌 뒤, 회사에서 허용한 AI 환경과 데이터만 사용하세요.

    마무리

    엑셀 데이터 분석에서 AI의 역할은 엑셀을 대신하는 것이 아니라 데이터를 어떻게 바라볼지 정리하고, 반복적인 분석 과정을 빠르게 만드는 것에 가깝습니다.

    처음부터 복잡한 자동화를 만들 필요도 없습니다.

    엑셀 정리 → 파일 업로드 → 데이터 검증 → 숫자 비교 → 보고서 작성의 5단계만 먼저 익혀도 업무에서 활용할 수 있는 범위가 넓어집니다.

    특히 “결론을 내줘”보다 “확인된 사실과 추가 검증이 필요한 가설을 구분해줘”라고 요청하는 습관을 들이면 AI의 답변을 업무 자료에 적용할 때 검토하기가 훨씬 쉬워집니다.

    데이터 예시의 계산값을 모두 바로잡아 주세요


  • ChatGPT와 Google Apps Script로 노코드 이메일 자동화하기: 5분 만에 시작하는 법

    ChatGPT와 Google Apps Script로 노코드 이메일 자동화하기: 5분 만에 시작하는 법

    반복 이메일, ChatGPT와 Google Apps Script로 자동화해보기 ( (자세히 보기) (자세히 보기) (자세히 보기)자세히 보기)

    업무를 하다 보면 내용은 조금씩 달라도 구조가 비슷한 이메일을 반복해서 작성하게 됩니다. 예를 들어 회의 참석 안내, 자료 제출 요청, 일정 변경 공지처럼 받는 사람과 날짜만 바뀌는 메일이 그렇습니다.

    이럴 때 ChatGPT를 단순히 “메일 써줘”라고 사용하는 것보다 한 단계 더 나아갈 수 있습니다. ChatGPT는 이메일 문구와 자동화 로직을 만드는 데 사용하고, Google Apps Script는 Gmail에서 실제로 메일을 처리하는 역할을 맡기는 방식입니다.

    특히 이번 예제는 별도의 프로그램을 설치하지 않고 Google 계정과 Gmail, Google Apps Script만으로 시작할 수 있도록 구성했습니다. 다만 회사 계정에서는 관리자가 Apps Script나 외부 AI 서비스 사용을 제한할 수 있으므로 사내 규정을 먼저 확인해야 합니다.

    먼저 완성된 모습을 확인해보겠습니다

    예를 들어 Google 스프레드시트에 다음처럼 입력했다고 가정해보겠습니다.

    이름 이메일 자료명 마감일
    홍길동 hong@example.com 9월 영업보고서 9월 30일
    이영희 lee@example.com 9월 비용정산서 10월 1일

    Apps Script가 이 데이터를 읽으면 첫 번째 행을 바탕으로 다음과 같은 이메일을 만들 수 있습니다.

    제목: 9월 영업보고서 제출 요청

    홍길동님, 안녕하세요.

    9월 영업보고서 제출을 부탁드립니다.

    제출 마감일은 9월 30일입니다.

    확인 후 기한 내 전달 부탁드립니다.

    감사합니다.

    두 번째 행에서는 이름, 자료명, 마감일이 자동으로 바뀝니다. 사람이 매번 메일을 복사하고 수정할 필요가 없는 구조입니다.

    1단계. Google 스프레드시트에 이메일 목록 만들기

    먼저 새 Google 스프레드시트를 만들고 첫 번째 행에 다음 항목을 입력합니다.

    A1: 이름
    B1: 이메일
    C1: 자료명
    D1: 마감일
    E1: 발송상태

    그 아래에 실제 데이터를 넣습니다.

    이름 이메일 자료명 마감일 발송상태
    홍길동 hong@example.com 9월 영업보고서 9월 30일
    이영희 lee@example.com 9월 비용정산서 10월 1일

    여기서 발송상태 열을 별도로 두는 것이 실무에서 중요합니다. 자동화가 실행된 뒤 어떤 행을 처리했는지 확인할 수 있기 때문입니다.

    2단계. Google Apps Script 열기

    스프레드시트 상단 메뉴에서 확장 프로그램 → Apps Script를 선택합니다.

    새 편집기가 열리면 기존 코드를 지우고 아래 코드를 넣습니다.

    function sendEmails() { const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); const data = sheet.getDataRange().getValues(); for (let i = 1; i < data.length; i++) { const name = data[i][0]; const email = data[i][1]; const documentName = data[i][2]; const deadline = data[i][3]; const status = data[i][4]; // 이미 발송한 행은 건너뜁니다. if (status === "발송완료") { continue; } // 이메일 주소가 없는 행은 건너뜁니다. if (!email) { continue; } const subject = `${documentName} 제출 요청`; const body = `${name}님, 안녕하세요. ${documentName} 제출을 부탁드립니다. 제출 마감일은 ${deadline}입니다. 확인 후 기한 내 전달 부탁드립니다. 감사합니다.`; GmailApp.sendEmail(email, subject, body); sheet.getRange(i + 1, 5).setValue("발송완료"); } }

    이 코드에서 특별히 기억할 부분은 많지 않습니다. 스프레드시트의 각 행을 읽은 뒤 이름, 이메일 주소, 자료명, 마감일을 가져오고, 이메일을 보낸 다음 E열에 발송완료라고 기록하는 구조입니다.

    처음 실행하면 Google에서 Gmail 접근 권한을 요청할 수 있습니다. 사용하는 Google 계정과 스크립트가 어떤 권한을 요청하는지 확인한 뒤 승인합니다.

    3단계. 먼저 실제 수신자에게 보내지 말고 테스트하기

    이메일 자동화 과정을 단계별로 확인하는 일러스트

    여기서 바로 실무 메일을 대량 발송하는 것은 권하지 않습니다. 처음에는 본인 이메일 주소 하나만 넣어 테스트하는 것이 안전합니다.

    예를 들어 스프레드시트를 다음처럼 바꿉니다.

    이름 이메일 자료명 마감일 발송상태
    테스트 본인 이메일 자동화 테스트 자료 9월 30일

    Apps Script에서 sendEmails 함수를 선택하고 실행합니다.

    메일이 정상적으로 도착했다면 스프레드시트 E열에 발송완료가 표시되는지 확인합니다.

    이 확인 단계가 중요한 이유는 단순히 메일이 도착했는지만 보는 것이 아니기 때문입니다. 데이터 입력 → 메일 생성 → 발송 → 발송 기록이라는 전체 흐름이 정상적으로 작동하는지를 확인해야 합니다.

    4단계. ChatGPT를 이용해 이메일 문구를 개선하기

    여기서 ChatGPT가 유용해집니다. Apps Script 코드를 직접 고민하는 대신 원하는 이메일의 조건을 구체적으로 입력하면 됩니다.

    예를 들어 다음처럼 요청할 수 있습니다.

    “직장 동료에게 자료 제출을 요청하는 이메일 문구를 만들어줘. 지나치게 딱딱하지 않게 작성하고, 제목과 본문을 분리해줘. 이름, 자료명, 마감일은 나중에 자동으로 바꿀 수 있도록 변수 위치를 표시해줘.”

    그러면 자동화에 넣을 문구의 기본 구조를 만들 수 있습니다. 이후 그 결과를 Apps Script의 subject와 body 부분에 반영하면 됩니다.

    중요한 점은 ChatGPT에게 실제 고객명, 전화번호, 주민등록번호, 회사 기밀자료 등을 그대로 입력하지 않는 것입니다. 테스트 단계에서는 가상의 이름과 이메일을 사용하고, 회사 업무에 적용할 때는 사내 AI 사용 정책을 확인해야 합니다.

    5단계. 매번 실행하지 않고 자동 실행하기

    한 번 실행하는 것에서 끝내지 않고 정해진 시간에 자동으로 실행하도록 만들 수도 있습니다.

    Apps Script 화면 왼쪽의 트리거 메뉴에서 새 트리거를 추가하고 다음과 같이 설정합니다.

    • 실행할 함수: sendEmails
    • 이벤트 소스: 시간 기반
    • 실행 주기: 필요한 업무 주기에 맞게 선택

    예를 들어 매일 특정 시간에 스프레드시트를 확인하고 미발송 행만 처리하도록 구성할 수 있습니다.

    앞서 코드에서 발송완료를 확인하도록 만든 이유도 여기에 있습니다. 자동 실행이 반복되더라도 이미 처리된 행을 다시 보내지 않도록 하는 장치입니다.

    대부분 놓치는 부분: 자동 발송보다 ‘중복 발송 방지’가 먼저입니다

    업무용 이메일을 확인하며 발송 결과를 점검하는 장면

    이메일 자동화에서 처음부터 가장 복잡한 기능을 만들 필요는 없습니다. 오히려 먼저 확인해야 할 것은 같은 메일이 두 번 발송되지 않는가입니다.

    예를 들어 스크립트가 오전 9시에 실행된 뒤 오류가 발생해 오후 1시에 다시 실행될 수 있습니다. 발송 여부를 기록하지 않았다면 같은 사람에게 동일한 이메일이 다시 발송될 수 있습니다.

    이번 예제에서는 E열의 발송완료 값을 확인해서 이미 처리한 행을 건너뛰도록 했습니다.

    실무에서는 여기에 한 단계 더 나아가 발송일시, 오류 상태, 승인 여부 등을 별도 열에 기록할 수도 있습니다.

    상태 의미
    대기 아직 발송하지 않음
    발송완료 메일 발송 작업 완료
    오류 처리 중 문제가 발생함

    이렇게 상태를 남겨두면 자동화가 제대로 작동했는지 나중에 사람이 확인하기도 쉽습니다.

    이 방식이 특히 잘 맞는 업무

    • 정기적인 자료 제출 요청
    • 회의 전 참석자 안내
    • 교육이나 행사 일정 안내
    • 반복적인 업무 리마인드
    • 스프레드시트에 정리된 여러 대상에게 보내는 동일 형식의 안내 메일

    반대로 고객별로 내용이 크게 달라지거나 법적 책임이 발생할 수 있는 중요한 안내 메일은 자동 발송보다 사람의 최종 확인 단계를 두는 방식이 적합합니다.

    개인정보와 회사 자료는 이렇게 다루세요

    자동화 도구를 업무에 도입할 때 가장 먼저 확인할 것은 편리함이 아니라 어떤 데이터가 어디로 전달되는지입니다.

    • 주민등록번호, 계좌번호, 비밀번호 등 불필요한 개인정보를 자동화 데이터에 넣지 않습니다.
    • 고객 명단이나 직원 개인정보를 개인 Google 계정으로 옮기지 않습니다.
    • 회사에서 승인하지 않은 AI 서비스에 내부 문서나 기밀정보를 붙여넣지 않습니다.
    • 외부 발송 전에는 수신자와 첨부파일을 다시 확인합니다.
    • 대량 발송은 Gmail 및 Google 서비스의 발송 한도와 회사 정책을 확인합니다.

    특히 ChatGPT를 이용해 이메일 문구를 만들 때는 실제 업무 데이터를 그대로 넣기보다 “고객 A”, “자료 B”, “9월 30일”처럼 비식별화한 예시로 문구를 먼저 작성하는 방법이 안전합니다.

    FAQ

    Q1. 코딩을 몰라도 사용할 수 있나요?

    네. 이번 예제는 Google Apps Script 코드를 직접 설계하기보다 제공된 코드를 복사하고 스프레드시트의 열 구조를 맞추는 방식으로 시작할 수 있습니다. 다만 코드를 수정하거나 자동화를 확장하려면 JavaScript의 기본 문법을 조금씩 익히는 것이 도움이 됩니다.

    Q2. ChatGPT가 이메일을 직접 보내주는 건가요?

    이 예제의 구조에서는 ChatGPT가 Gmail에 직접 접속해 메일을 보내는 것이 아닙니다. ChatGPT는 이메일 문구와 Apps Script 작성·수정을 돕고, 실제 Gmail 발송은 Google Apps Script의 GmailApp.sendEmail()이 담당합니다.

    Q3. 회사 업무에 바로 적용해도 되나요?

    사내 규정에 따라 다릅니다. 특히 고객정보, 직원정보, 영업자료처럼 민감한 데이터를 다룬다면 회사의 Google Workspace 관리 정책과 AI 사용 규정을 먼저 확인해야 합니다. 처음에는 본인 계정과 테스트용 데이터로 전체 흐름을 검증한 뒤 실제 업무에 적용하는 편이 안전합니다.

    정리하면, 이메일 자동화의 시작점은 복잡한 시스템을 만드는 것이 아닙니다. 스프레드시트에 데이터를 정리하고 → Apps Script가 읽고 → 정해진 형식의 메일을 만들고 → 발송 결과를 기록하는 구조부터 만들면 됩니다.

    여기에 ChatGPT를 활용하면 반복적인 이메일 문구를 작성하거나 수정하는 작업까지 줄일 수 있습니다. 처음부터 모든 이메일을 자동화하기보다, 매주 반복되는 한 가지 업무를 골라 테스트하는 것이 실제 업무에 적용하기 쉽습니다.


  • ChatGPT로 직장인의 엑셀 데이터 분석 자동화하기: 5분 만에 시작하는 법

    ChatGPT로 직장인의 엑셀 데이터 분석 자동화하기: 5분 만에 시작하는 법

    엑셀을 열어 숫자를 찾는 데 시간을 쓰고 있다면

    엑셀 업무에서 시간이 많이 걸리는 일은 계산 자체보다 데이터를 정리하고, 조건을 걸어 찾고, 결과를 다시 설명하는 과정인 경우가 많습니다.

    예를 들어 영업팀에서 한 달 동안 처리한 주문 데이터를 받아 다음과 같은 질문에 답해야 한다고 가정해 보겠습니다.

    • 제품별 매출은 얼마인가?
    • 전월보다 매출이 감소한 제품은 무엇인가?
    • 매출이 가장 크게 증가한 거래처는 어디인가?
    • 다음 보고서에서 확인해야 할 항목은 무엇인가?

    엑셀 함수와 피벗 테이블을 잘 활용하면 직접 처리할 수 있습니다. 하지만 비슷한 분석을 매주 반복한다면 이야기가 달라집니다. 이때 ChatGPT에 엑셀 파일을 전달하고 ( (자세히 보기)자세히 보기)분석 목적, 계산 기준, 원하는 결과 형태를 함께 지정하면 반복 작업의 상당 부분을 줄일 수 있습니다.

    여기서는 거창한 자동화 프로그램을 만드는 대신, 실제 직장인이 5분 안에 시작할 수 있는 방법부터 살펴보겠습니다.

    1. 먼저 엑셀 데이터를 작은 분석 과제로 만든다

    ChatGPT에 엑셀 파일만 올리고 “분석해 줘”라고 요청하면 결과가 모호해질 수 있습니다. 데이터가 무엇을 의미하는지와 어떤 결과가 필요한지를 함께 알려주는 편이 좋습니다.

    예를 들어 다음과 같은 주문 데이터가 있다고 해보겠습니다.

    주문일 제품 거래처 수량 단가 매출
    2026-08-03 A노트 가온상사 12 18000 216000
    2026-08-04 B펜 한빛유통 50 3200 160000
    2026-08-07 A노트 한빛유통 20 18000 360000
    2026-08-11 C파일 가온상사 30 4500 135000
    2026-08-15 B펜 가온상사 80 3200 256000

    실무에서는 행이 수백 개, 수천 개로 늘어나기 때문에 이런 표를 눈으로 확인하는 것보다 분석 기준을 먼저 정하는 것이 효율적입니다.

    ChatGPT 입력창에는 다음처럼 요청할 수 있습니다.

    첨부한 엑셀 파일의 주문 데이터를 분석해 주세요.

    1. 제품별 총매출과 판매수량을 계산하세요.
    2. 거래처별 총매출을 계산하세요.
    3. 매출이 가장 높은 제품부터 순서대로 정리하세요.
    4. 데이터에서 이상하거나 확인이 필요한 값이 있는지 찾아주세요.
    5. 결과는 표로 보여주고, 마지막에 실무자가 확인할 만한 사항을 3개 이내로 정리하세요.

    이렇게 요청하면 단순히 숫자를 계산하는 데서 끝나지 않고 분석 결과를 사람이 읽을 수 있는 형태로 정리하는 작업까지 한 번에 요청할 수 있습니다.

    2. 실제로 나온 결과를 다시 엑셀 업무에 연결한다

    앞의 예시 데이터라면 제품별 결과는 다음과 같은 형태로 정리할 수 있습니다.

    제품 판매수량 총매출
    A노트 32 576,000원
    B펜 130 416,000원
    C파일 30 135,000원

    여기서 끝내지 않고 한 단계 더 요청할 수 있습니다.

    방금 계산한 결과를 엑셀에서 재현할 수 있도록 필요한 수식도 알려주세요. 현재 원본 데이터의 열 이름은 주문일, 제품, 거래처, 수량, 단가, 매출입니다. 초보자가 그대로 복사해 사용할 수 있도록 수식과 각 수식의 용도를 함께 설명하세요.

    그러면 ChatGPT는 데이터 구조에 맞춰 SUMIF, SUMIFS, COUNTIF 등의 함수를 활용한 수식 예시를 제시할 수 있습니다.

    이 방식의 장점은 이번 분석 결과만 얻는 것이 아니라 다음번에도 반복할 수 있는 작업 방법을 함께 확보한다는 것입니다.

    엑셀 데이터를 정리하고 분석 결과로 연결하는 업무 흐름을 보여주는 일러스트

    3. 가장 유용한 방법은 ‘분석’과 ‘반복 작업’을 분리하는 것이다

    엑셀 업무를 ChatGPT로 자동화할 때 흔히 하는 실수는 모든 작업을 한 번에 자동화하려는 것입니다.

    실제로는 다음 세 단계로 나누는 것이 관리하기 쉽습니다.

    1. 정리 — 빈칸, 중복, 날짜 형식, 숫자 형식 등을 확인한다.
    2. 분석 — 합계, 평균, 증감률, 순위 등 필요한 지표를 계산한다.
    3. 보고 — 표와 문장으로 결과를 정리한다.

    예를 들어 매주 월요일마다 전주 판매 데이터를 분석한다고 해보겠습니다. 매번 다음과 같이 요청할 수 있습니다.

    첨부한 이번 주 판매 데이터를 지난주와 같은 기준으로 분석하세요.

    분석 순서는 다음과 같습니다.

    ① 제품별 매출
    ② 전주 대비 매출 증감률
    ③ 매출 감소 제품
    ④ 거래처별 매출 상위 5곳
    ⑤ 데이터 이상 여부

    지난번 결과와 비교할 수 있도록 동일한 표 구조를 유지하세요. 계산에 필요한 기준이 데이터에 없으면 임의로 추정하지 말고 먼저 알려주세요.

    이렇게 분석 기준을 고정된 문장으로 만들어 두는 것이 반복 업무 자동화에서 상당히 유용합니다.

    특히 ‘지난번과 같은 기준’만 쓰지 않는 것이 좋다

    여기서 놓치기 쉬운 부분이 있습니다.

    “지난번처럼 분석해 주세요”라고만 하면 새로운 대화나 다른 파일에서는 기준이 충분히 전달되지 않을 수 있습니다. 대신 무엇을 계산하고, 어떤 순서로 보여주며, 데이터가 부족할 때 어떻게 처리할지를 짧은 지침으로 만들어 두는 편이 안전합니다.

    예를 들어 다음과 같이 저장해 둘 수 있습니다.

    주간 판매 분석 기준
    – 매출 = 수량 × 단가를 우선 확인한다.
    – 제품별 매출과 판매수량을 계산한다.
    – 전주 데이터가 있으면 증감률을 계산한다.
    – 누락값과 중복 주문을 별도로 표시한다.
    – 근거가 없는 원인은 추정하지 않는다.
    – 결과는 표 → 이상 데이터 → 확인 사항 순서로 작성한다.

    다음 주에는 새 엑셀 파일을 넣고 이 기준을 그대로 사용하면 됩니다. 분석 기준이 문서화되어 있기 때문에 담당자가 바뀌어도 업무 방식을 전달하기가 쉬워집니다.

    4. 엑셀에서 바로 쓸 수 있는 수식을 ChatGPT에게 만들게 한다

    반복되는 계산을 모두 ChatGPT에 맡길 필요도 없습니다. 오히려 엑셀에서 계속 계산해야 하는 항목은 수식으로 만들어 두는 것이 편리할 때가 많습니다.

    예를 들어 A열에 제품명, D열에 수량, E열에 단가가 있다면 매출 계산식을 요청할 수 있습니다.

    엑셀에서 D열의 수량과 E열의 단가를 곱해서 매출을 계산하려고 합니다. 첫 데이터 행은 2행입니다. F2에 넣을 수식을 작성하고 아래 행까지 복사할 때 문제가 없는지도 설명해 주세요.

    이처럼 구체적으로 질문하면 일반적인 엑셀 설명보다 현재 파일 구조에 맞는 답을 얻기 쉽습니다.

    또한 단순 수식뿐 아니라 다음과 같은 반복 업무도 요청할 수 있습니다.

    • 특정 조건에 해당하는 행 찾기
    • 중복 데이터 확인용 수식 만들기
    • 날짜에서 월이나 분기 추출하기
    • 증감률 계산하기
    • 조건에 따라 ‘확인 필요’ 표시하기
    • 반복 보고서에 사용할 표 구조 만들기

    5. 5분 실전 루틴으로 시작하기

    처음부터 복잡한 자동화 시스템을 만들 필요는 없습니다. 다음 순서만 따라 해도 됩니다.

    1단계 — 원본 파일을 복사한다

    분석하기 전에 원본 엑셀 파일을 별도로 보관합니다. ChatGPT가 제안한 수식이나 정리 방법을 적용할 때 원본과 결과를 비교할 수 있도록 하기 위해서입니다.

    2단계 — 개인정보와 사내 민감정보를 확인한다

    고객명, 전화번호, 이메일, 주민등록번호, 계좌번호, 개인 주소와 같은 정보는 그대로 업로드하지 않는 것이 안전합니다. 회사 내부 자료 역시 사내 AI 사용 규정과 정보보안 정책을 먼저 확인해야 합니다.

    예를 들어 다음 데이터가 있다면

    홍길동 / 010-1234-5678 / ABC전자 / 5,000,000원

    분석에 고객 식별 정보가 필요하지 않다면 다음처럼 바꿀 수 있습니다.

    고객001 / 연락처삭제 / 거래처A / 5,000,000원

    분석 목적에 필요하지 않은 개인정보는 애초에 데이터에서 제거하는 것이 가장 간단한 방법입니다.

    3단계 — 파일과 분석 목적을 함께 전달한다

    “이 엑셀 분석해 줘”보다 다음처럼 요청합니다.

    이 파일은 월간 판매 데이터입니다. 제품별 매출, 거래처별 매출, 전월 대비 증감률을 확인하려고 합니다. 먼저 열 구조와 데이터 형식을 확인한 뒤 분석하세요. 누락값이나 중복값이 있으면 계산 전에 별도로 알려주세요. 결과는 표로 정리하고, 마지막에 사람이 확인해야 할 사항을 작성하세요.

    4단계 — 결과를 원본 엑셀과 대조한다

    AI가 계산했다고 해서 검증을 생략하면 안 됩니다. 특히 금액, 인사, 재무, 계약 관련 데이터는 일부 표본을 직접 계산해 결과가 맞는지 확인하는 것이 좋습니다.

    예를 들어 전체 2,000행을 분석했다면 제품 하나를 골라 원본 데이터에서 직접 합계를 계산해 ChatGPT 결과와 비교합니다. 결과가 맞는 것을 확인한 뒤 반복 작업에 적용하는 방식입니다.

    직장인이 엑셀 분석 결과를 원본 데이터와 대조하는 모습

    6. 자동화 수준을 한 단계 높이는 방법

    여기서부터가 단순한 “엑셀 분석”과 “반복 업무 자동화”의 차이입니다.

    매주 같은 업무를 한다면 다음 네 가지를 하나의 템플릿으로 만들어 두세요.

    구성 요소 미리 정할 내용
    입력 어떤 엑셀 파일을 넣는가
    검증 빈칸·중복·이상값을 어떻게 확인하는가
    분석 어떤 지표를 계산하는가
    출력 표와 문장을 어떤 순서로 보여주는가

    예를 들어 “월간 매출 분석”이라는 템플릿을 만들어 두면 다음 달에는 새 파일만 교체하고 동일한 분석 지침을 적용할 수 있습니다.

    더 나아가 회사에서 허용하는 범위 내에서 스프레드시트 기능, 매크로, Power Query, 자동화 도구 등을 결합하면 파일 정리와 계산을 더 체계적으로 자동화할 수도 있습니다. 다만 처음부터 복잡한 자동화를 구축하기보다 사람이 반복해서 하는 작업을 하나씩 줄이는 방식이 관리하기 쉽습니다.

    7. 결과를 그대로 믿지 않고 ‘검증 요청’까지 자동화한다

    실무에서 특히 유용한 방법은 분석 요청 뒤에 검증 절차를 붙이는 것입니다.

    예를 들어 이렇게 요청할 수 있습니다.

    분석 결과를 작성한 뒤 다음 항목을 스스로 점검하세요.

    1. 합계가 원본 데이터의 합계와 일치하는지 확인
    2. 누락된 행이나 중복된 행이 있는지 확인
    3. 숫자가 문자 형식으로 저장된 셀이 결과에 영향을 줄 가능성이 있는지 확인
    4. 전월 대비 증감률 계산에서 기준값이 0인 항목이 있는지 확인
    5. 확인할 수 없는 내용은 추정하지 말고 ‘확인 필요’로 표시

    이렇게 하면 단순히 “답을 만들어 달라”는 요청에서 벗어나 검증 가능한 분석 과정을 만들 수 있습니다.

    8. 자주 묻는 질문

    Q1. 엑셀 파일을 ChatGPT에 올리면 원본 엑셀이 자동으로 수정되나요?

    일반적인 파일 분석은 데이터를 읽고 계산하거나 결과를 정리하는 데 활용할 수 있지만, 사용 중인 ChatGPT 환경과 기능에 따라 파일 편집·저장 방식에는 차이가 있을 수 있습니다. 따라서 원본 파일은 별도로 보관하고, 결과를 확인한 뒤 실제 업무 파일에 반영하는 방식이 안전합니다.

    Q2. 회사 매출 데이터를 ChatGPT에 올려도 되나요?

    회사 내부 규정에 따라 달라집니다. 특히 고객 개인정보, 미공개 재무정보, 계약정보, 인사정보, 영업기밀 등이 포함되어 있다면 회사의 생성형 AI 사용 정책을 먼저 확인해야 합니다. 분석에 필요하지 않은 개인정보는 삭제하거나 비식별화하고, 회사에서 승인하지 않은 자료는 외부 서비스에 업로드하지 않는 것이 원칙입니다.

    Q3. ChatGPT가 계산한 숫자를 그대로 보고서에 사용해도 되나요?

    중요한 숫자는 원본 데이터와 대조하는 절차가 필요합니다. 특히 금액이나 실적처럼 오류가 발생했을 때 업무상 문제가 커질 수 있는 데이터는 일부 표본을 직접 계산하거나 엑셀 수식으로 재검증하는 것이 좋습니다. ChatGPT는 분석 작업을 빠르게 도와주는 도구로 활용하고, 최종 수치의 확인 책임은 업무 담당자에게 두는 편이 안전합니다.

    정리하면, 엑셀 자동화의 시작은 복잡한 프로그램을 만드는 것이 아닙니다. 반복되는 업무에서 “무엇을 입력하고 → 무엇을 검사하고 → 무엇을 계산하고 → 어떤 형태로 결과를 받을지”를 정해두는 것부터 시작할 수 있습니다.

    처음에는 지난달 판매 데이터처럼 비교적 단순한 파일 하나를 선택해 보세요. 파일 업로드 → 분석 기준 입력 → 결과 확인 → 엑셀과 대조 → 반복용 프롬프트 저장이라는 흐름을 한 번 만들어 두면, 다음 분석부터는 같은 작업을 훨씬 짧은 시간에 시작할 수 있습니다.