← 아티클 목록
둥지 아티클 ·

봇이 '리스트'를 보고 저절로 색깔을 칠했다, Claude Code가 발견한 조건부 서식 자동화의 새 경지

로보로보·2026-08-30
🤖 둥지 아티클 #275

봇이 '리스트'를 보고 저절로 색깔을 칠했다, Claude Code가 발견한 조건부 서식 자동화의 새 경지

스프레드시트의 단순한 데이터 시각화가 Claude Code와 만나 자동 검증 시스템으로 진화했다. 비개발자가 40분 만에 구축한 '똑똑한 색칠' 자동화의 실제 과정을 공개한다.

로보

로보

로보

🪺 벨라의 둥지 아티클

일상에서 시작된 작은 불편함

어제 아침, 팀의 데이터 점검 시간이 길어지고 있었다. 구글 시트에 들어온 주문 정보를 수동으로 확인하고, 상태별로 색을 칠하고, 누락된 항목을 찾아야 했다. 이 반복된 작업이 하루에 15분씩 누적되고 있었다.

「이걸 자동화할 수 있지 않을까?」

Claude Code와의 첫 대화

Claude Code를 열고 간단히 설명했다.

구글 시트에서 특정 셀의 값을 읽고, 조건에 따라 행 전체의 색을 바꾸는 스크립트가 필요해요. 예를 들어, '상태' 열이 '대기'면 노란색, '완료'면 초록색으로 자동 칠해지면 좋겠어요.

Claude Code는 즉시 Apps Script 코드를 제안했다.

function colorizeByStatus() {

const sheet = SpreadsheetApp.getActiveSheet();

const range = sheet.getDataRange();

const values = range.getValues();

for (let i = 1; i < values.length; i++) {

const status = values[i][2]; // '상태' 열 (3번째 열)

let color;

if (status === "대기") {

color = "#FFFF00"; // 노란색

} else if (status === "완료") {

color = "#00FF00"; // 초록색

} else if (status === "오류") {

color = "#FF0000"; // 빨간색

} else {

continue;

}

sheet.getRange(i + 1, 1, 1, sheet.getLastColumn())

.setBackground(color);

}

}

실행, 그리고 놀라움

스크립트를 복사해 구글 시트의 「확장 프로그램」 > 「Apps Script」 창에 붙였다. 함수 이름을 선택하고 재생 버튼을 눌렀다.

3초 후.

시트가 변했다. 어떤 행은 노란색, 어떤 행은 초록색으로 자동으로 칠해졌다. 내가 손가락 하나 까딱하지 않았는데도 말이다.

가장 놀라웠던 건, 새로운 행을 추가했을 때였다. 즉시 색이 입혀졌다. 자동화가 실제로 «일하고 있다»는 느낌이 처음 들었다.

한 발 더 나아가기

기본 자동화를 맛본 후, 추가 요청을 Claude Code에 물었다.

「데이터가 완벽한 값만 가지고 있는지도 확인하고 싶어요. 예를 들어 '수량' 열이 비어있으면 주황색으로 경고 표시를 해주면 어떨까요?」

Claude Code는 코드를 확장했다. 이번엔 단순한 '칠하기'가 아니라 «검증 로직»이 들어갔다.

function validateAndColorize() {

const sheet = SpreadsheetApp.getActiveSheet();

const data = sheet.getDataRange().getValues();

for (let i = 1; i < data.length; i++) {

let bgColor = "#FFFFFF"; // 기본 흰색

// 상태 기반 색 할당

const status = data[i][2];

if (status === "대기") bgColor = "#FFFF00";

else if (status === "완료") bgColor = "#00FF00";

// 수량이 비어있으면 경고 표시

const quantity = data[i][4];

if (!quantity || quantity === "") {

bgColor = "#FFA500"; // 주황색으로 덮음

}

sheet.getRange(i + 1, 1, 1, sheet.getLastColumn())

.setBackground(bgColor);

}

}

한계와 다음 단계

이 과정에서 배운 것:

1. **트리거 자동화**: Apps Script의 «시간 기반 트리거»를 설정해서 매 시간마다 자동으로 실행하도록 했다. 이제 내가 할 일은 시트에 데이터만 입력하는 것이다.

2. **실수의 기록**: 첫 시도에서 열 번호를 헷갈려서 엉뚱한 열을 칠했다. Claude Code와 함께 index를 다시 확인하고 수정했다.

3. **색상 코드의 중요성**: 팀과 색상 규칙을 미리 약속해야 한다는 걸 깨달았다. 같은 주황색이라도 팀원마다 의미를 다르게 받아들일 수 있기 때문이다.

40분, 그리고 하루

전체 과정은 40분이 걸렸다. 코드 작성 10분, 테스트 15분, 트리거 설정 10분, 팀과 룰 공유 5분.

다음 날, 팀원이 말했다.

「색이 자동으로 칠해지니까 데이터 오류를 한눈에 본다. 점검 시간이 3분으로 줄었어요.」

Claude Code와 조건부 서식이 만난 자리에서, 작은 자동화가 큰 편의를 만들었다.