Excel 자동화
통합 문서 생성, 데이터 쓰기, 셀 서식 지정, 행 업서트, 워크시트 관리를 포함한 스프레드시트 작업을 자동화합니다. Microsoft Excel(원드라이브) 및 Google Sheets와 함께 작동합니다.
툴킷 문서: composio.dev/toolkits/excel
설정
이 스킬을 사용하려면 https://rube.app/mcp에 연결된 Rube MCP 서버가 필요합니다.
도구를 실행하기 전에 excel(및 선택적으로 googlesheets) 툴킷에 대한 활성 연결이 있는지 확인하십시오. 활성 연결이 없으면 RUBE_MANAGE_CONNECTIONS를 통해 연결을 시작하십시오.
핵심 워크플로우
1. 새 Excel 통합 문서 만들기
EXCEL_CREATE_WORKBOOK을 사용하여 새 .xlsx 파일을 생성하고 원드라이브에 업로드합니다.
도구: EXCEL_CREATE_WORKBOOK
단계:
- 워크시트 이름과 데이터와 함께
EXCEL_CREATE_WORKBOOK호출 - 도구가
.xlsx파일을 생성하고 원드라이브에 업로드 - 반환된 파일 경로/URL을 후속 작업에 사용
2. 스프레드시트에 데이터 쓰기
GOOGLESHEETS_BATCH_UPDATE를 사용하여 특정 범위에 값을 쓰거나 행을 추가합니다.
도구: GOOGLESHEETS_BATCH_UPDATE
주요 매개변수:
spreadsheet_id(필수) -- URL의 스프레드시트 ID (44자 영숫자 문자열)sheet_name(필수) -- 탭 이름, 예:"Sheet1","Sales Data"values(필수) -- 셀 값의 2D 배열, 예:[["Name","Amount"],["Alice",100]]first_cell_location-- A1 표기법의 시작 셀 (예:"A1","D3"). 생략하면 행이 추가됨valueInputOption--"USER_ENTERED"(기본값, 수식 구문 분석) 또는"RAW"(있는 그대로 저장)
예시:
도구: GOOGLESHEETS_BATCH_UPDATE
인수:
spreadsheet_id: "1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"
sheet_name: "Sheet1"
values: [["Item","Cost","Stocked"],["Wheel",20.50,true],["Screw",0.50,true]]
first_cell_location: "A1"
3. 키 열로 행 업서트
GOOGLESHEETS_UPSERT_ROWS를 사용하여 키 열을 일치시켜 기존 행을 업데이트하거나, 일치하는 항목이 없으면 새 행을 추가합니다. CRM 동기화, 재고 업데이트 및 중복 제거에 이상적입니다.
도구: GOOGLESHEETS_UPSERT_ROWS
주요 매개변수:
spreadsheetId(필수) -- 스프레드시트 IDsheetName(필수) -- 탭 이름rows(필수) -- 데이터 행의 2D 배열 (최소 1행).headers가 생략되면 첫 번째 행이 헤더로 처리됨headers-- 데이터의 열 이름, 예:["Email","Phone","Status"]keyColumn-- 일치시킬 열 헤더, 예:"Email","SKU","Lead ID"strictMode--true(기본값) 열 불일치 시 오류 발생;false는 자동으로 자름
예시:
도구: GOOGLESHEETS_UPSERT_ROWS
인수:
spreadsheetId: "1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"
sheetName: "Contacts"
keyColumn: "Email"
headers: ["Email","Phone","Status"]
rows: [["[email protected]","555-0101","Active"],["[email protected]","555-0102","Pending"]]
4. 셀 서식 지정
GOOGLESHEETS_FORMAT_CELL을 사용하여 범위에 굵게, 기울임꼴, 글꼴 크기 및 배경색을 적용합니다.
도구: GOOGLESHEETS_FORMAT_CELL
주요 매개변수:
spreadsheet_id(필수) -- 스프레드시트 IDrange-- A1 표기법의 셀 범위, 예:"A1:D1","B2:B10"(인덱스 기반보다 권장)sheet_name-- 워크시트 이름, 예:"Sheet1"bold--true/falseitalic--true/falsefontSize-- 포인트 단위의 글꼴 크기, 예:12red,green,blue-- 배경색 구성 요소 (0.01.0 float 스케일, 0255 아님)
예시 (파란색 배경의 굵은 헤더 행):
도구: GOOGLESHEETS_FORMAT_CELL
인수:
spreadsheet_id: "1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"
range: "A1:D1"
sheet_name: "Sheet1"
bold: true
fontSize: 12
red: 0.2
green: 0.4
blue: 0.9
5. 새 워크시트 탭 추가
GOOGLESHEETS_ADD_SHEET를 사용하여 기존 스프레드시트 내에 새 탭을 만듭니다.
도구: GOOGLESHEETS_ADD_SHEET
주요 매개변수:
spreadsheetId(필수) -- 스프레드시트 IDtitle-- 새 탭의 이름, 예:"Q4 Report"forceUnique--true(기본값) 이름이 이미 존재하면 접미사를 자동으로 추가
예시:
도구: GOOGLESHEETS_ADD_SHEET
인수:
spreadsheetId: "1BxiMVs0XRA5nFMdKvBdBZjgmUUqptlbs74OgvE2upms"
title: "Q4 Report"
forceUnique: true
6. 데이터 읽기 및 내용 확인
GOOGLESHEETS_BATCH_GET을 사용하여 지정된 셀 범위에서 데이터를 검색하여 유효성 검사 또는 추가 처리를 수행합니다.
도구: GOOGLESHEETS_BATCH_GET
단계:
- 스프레드시트 ID와 대상 범위를 사용하여
GOOGLESHEETS_BATCH_GET호출 - 헤더와 데이터 정렬 확인
- 결과를 사용하여 후속 쓰기 또는 업데이트 작업 안내
지원 도구:
GOOGLESHEETS_GET_SHEET_NAMES-- 스프레드시트의 모든 탭 이름 나열GOOGLESHEETS_GET_SPREADSHEET_INFO-- 메타데이터(시트 ID, 속성) 가져오기GOOGLESHEETS_FIND_WORKSHEET_BY_TITLE-- 특정 탭이 존재하는지 확인
권장 실행 계획
- 스프레드시트 만들기 또는 찾기
GOOGLESHEETS_CREATE_GOOGLE_SHEET1을 사용하거나 기존spreadsheetId재사용 - 대상 탭 확인
GOOGLESHEETS_GET_SHEET_NAMES또는GOOGLESHEETS_FIND_WORKSHEET_BY_TITLE사용; 없으면GOOGLESHEETS_ADD_SHEET로 생성 - 기존 헤더 읽기 (선택 사항)
GOOGLESHEETS_BATCH_GET을 사용하여 열 정렬 - 데이터 쓰기 또는 업서트
GOOGLESHEETS_BATCH_UPDATE또는GOOGLESHEETS_UPSERT_ROWS사용 - 서식 적용 (선택 사항)
GOOGLESHEETS_FORMAT_CELL사용 - 결과 확인 (선택 사항)
GOOGLESHEETS_BATCH_GET사용 - 대체: Google Sheets 생성이 차단된 경우(HTTP 403), 로컬
.xlsx출력을 위해EXCEL_CREATE_WORKBOOK사용
알려진 함정
| 함정 | 세부 사항 |
|---|---|
| 시트 생성 시 HTTP 403 | GOOGLESHEETS_CREATE_GOOGLE_SHEET1이 Drive 생성 범위 누락으로 실패합니다. 기존 spreadsheetId를 재사용하거나 EXCEL_CREATE_WORKBOOK으로 대체하십시오. |
| 셀 제한 및 속도 제한 | Google Sheets는 스프레드시트당 약 5,000,000개 셀 제한이 있습니다. 과도한 쓰기 빈도는 HTTP 429를 유발합니다. 변경 사항을 일괄 처리하고 큰 쓰기(호출당 ~500행)를 청크로 나누십시오. |
| 형식 범위 오프바이원 | GOOGLESHEETS_FORMAT_CELL은 인덱스 모드 사용 시 0부터 시작하고 endIndex는 배타적인 범위를 사용합니다. 배경색은 0 |
| 시트 제목 고유성 | API 응답에서 시트 제목이 고유함이 보장되지 않습니다. 숫자 sheetId로 작업하고 쓰기 전에 확인된 탭을 확인하는 것이 좋습니다. |
| 업서트 페이로드 형태 | GOOGLESHEETS_UPSERT_ROWS는 headers + 2D rows 배열이 필요합니다. dicts 목록이나 빈 rows를 보내면 유효성 검사 오류가 발생합니다. 최소 1개의 데이터 행을 확인하십시오. |
빠른 참조
| 도구 슬러그 | 설명 |
|---|---|
EXCEL_CREATE_WORKBOOK | 새 .xlsx 통합 문서를 만들어 원드라이브에 업로드 |
GOOGLESHEETS_BATCH_UPDATE | 범위에 값 쓰기 또는 새 행 추가 |
GOOGLESHEETS_UPSERT_ROWS | 키로 기존 행 업데이트 또는 새 행 추가 |
GOOGLESHEETS_FORMAT_CELL | 셀 범위에 텍스트/배경 서식 적용 |
GOOGLESHEETS_ADD_SHEET | 스프레드시트에 새 워크시트 탭 추가 |
GOOGLESHEETS_CREATE_GOOGLE_SHEET1 | Drive에 새 Google 스프레드시트 생성 |
GOOGLESHEETS_GET_SHEET_NAMES | 스프레드시트의 모든 워크시트 이름 나열 |
GOOGLESHEETS_GET_SPREADSHEET_INFO | 스프레드시트 메타데이터 검색 |
GOOGLESHEETS_FIND_WORKSHEET_BY_TITLE | 제목으로 워크시트 존재 여부 확인 |
GOOGLESHEETS_BATCH_GET | 지정된 셀 범위에서 데이터 읽기 |
Composio 제공