개발자에게 "엑셀 말고 JSON으로 주세요"라는 말을 들어 보셨나요? 노코드 도구, 챗봇 빌더, 웹사이트 관리 도구를 쓰다 보면 JSON을 마주칠 일이 점점 많아집니다. JSON이 무엇이고 엑셀과 어떻게 대응되는지 쉽게 정리해 보겠습니다.
JSON이란?
JSON(JavaScript Object Notation)은 데이터를 글자로 표현하는 약속입니다. 사람이 읽을 수 있으면서 프로그램도 쉽게 해석할 수 있어, 웹 서비스끼리 데이터를 주고받을 때 사실상 표준으로 쓰입니다.
기본 문법 세 가지
- 객체 { }: "이름": 값 쌍의 묶음. 예: {"이름": "김민준", "부서": "개발팀"}
- 배열 [ ]: 값의 목록. 예: ["개발팀", "디자인팀"]
- 값: 문자열("텍스트"), 숫자(5200), 참/거짓(true/false), 비어 있음(null)
엑셀 표는 JSON으로 어떻게 바뀔까?
다음과 같은 엑셀 표가 있다고 해 봅시다.
| 이름 | 부서 | 연봉 |
|---|---|---|
| 김민준 | 개발팀 | 5200 |
| 이서연 | 디자인팀 | 4800 |
방식 1. 객체 배열(첫 행을 키로 사용)
첫 행의 제목이 '키'가 되고, 각 행이 하나의 객체가 됩니다. 가장 많이 쓰이는 형태입니다.
[
{ "이름": "김민준", "부서": "개발팀", "연봉": 5200 },
{ "이름": "이서연", "부서": "디자인팀", "연봉": 4800 }
]
방식 2. 2차원 배열
행을 그대로 배열로 옮깁니다. 키 이름이 반복되지 않아 용량이 작습니다.
[
["이름", "부서", "연봉"],
["김민준", "개발팀", 5200],
["이서연", "디자인팀", 4800]
]
변환 전에 엑셀을 정리하는 요령
- 첫 행은 제목만: 제목 위에 보고서 제목이나 빈 줄이 있으면 키가 이상해집니다. 표가 A1 셀부터 시작하게 정리하세요.
- 병합 셀 해제: 병합된 셀은 첫 칸에만 값이 있고 나머지는 비어 있게 변환됩니다.
- 제목은 짧고 고유하게: 같은 제목이 두 번 나오면 '_1' 같은 접미사가 붙습니다. 개발 용도라면 영문 제목(name, dept)을 쓰면 코드에서 다루기 더 편합니다.
- 날짜는 텍스트로: 엑셀 날짜는 내부적으로 숫자(일련번호)라서 JSON에 45678 같은 숫자로 나옵니다. 문자열 날짜가 필요하면 열 서식을 텍스트로 바꿔 '2026-10-09'처럼 입력하세요.
실제로 변환해 보기
- 엑셀 JSON 변환기에 파일을 끌어다 놓습니다.
- 변환할 시트를 고르고, '첫 행을 키로 사용' 옵션을 선택합니다.
- 결과를 복사하거나 .json 파일로 내려받습니다.
브라우저 안에서 변환되므로 고객 명단이나 단가표 같은 내부 데이터도 외부 서버를 거치지 않습니다.
JSON 결과를 확인하는 팁
- 결과 맨 앞이 '['로 시작하고 맨 끝이 ']'로 끝나는지 확인하세요.
- 값이 문자열이어야 하는데 숫자로 나왔다면(예: 우편번호) 엑셀에서 해당 열을 텍스트 서식으로 바꿔 다시 변환합니다.
- 받는 쪽 시스템이 요구하는 키 이름과 정확히 같은지(대소문자, 띄어쓰기 포함) 비교하세요.
엑셀과 JSON은 같은 데이터를 다르게 표현한 것일 뿐입니다. 구조만 이해하면 개발자와의 소통이 훨씬 수월해집니다.