본문으로 건너뛰기
AZ Tools

스프레드시트 컬럼 변환기

스프레드시트 컬럼 letter ↔ number — A=1·Z=26·AA=27·BC=55 — 와 A1·R1C1 셀 표기 사이 변환.

  • LetterAB
  • Number28
  • A1 셀AB1
  • R1C1 셀R1C28

기본 1-기반 — Excel·Sheets에서 보는 것과 일치. 인덱싱 API용은 0-기반 토글.

사용법

  1. 방향 선택 — letter → number 또는 number → letter.
  2. 값 입력. 다른 표기가 실시간 업데이트, 전체 A1(AB12)과 R1C1(R12C28) 셀 참조 포함.
  3. 0부터 컬럼 인덱스하는 API와 대화 중이면 0-기반으로 전환.

자세한 설명

펼치기

엑셀과 구글 시트는 열 이름에 전단사 26진법을 씁니다. A부터 Z까지 가고 AA, AB, …, AZ, BA, …, ZZ, AAA로 이어집니다. 이것은 온전한 26진법이 아니라서(0에 해당하는 자리가 없습니다) 소박한 산수와 조금씩 어긋납니다. 이 툴은 양방향을 다루며, 앱에서 보이는 것과 같은 1부터 세는 방식이 기본이고 코드용으로 0부터 세는 모드도 있습니다.

어려움의 전부가 빠진 0입니다. 보통의 26진법이라면 자릿값이 0부터 25까지이고 AA는 01이 1을 뜻하듯 A와 같은 뜻이 됩니다. 여기서는 모든 글자가 1부터 26까지의 값을 지니고 앞자리에 아무것도 없음을 적을 방법이 없어서, 글자가 하나 늘 때마다 범위가 연장되는 것이 아니라 곱해집니다. 한 글자 열이 26개, 두 글자가 676개, 세 글자가 17,576개입니다. 숫자를 변환하는 일은 나눗셈마다 앞서 1을 빼는 반복문이고, 그 뺄셈을 잊는 것이 Z가 A 뒤에 아무것도 없는 형태로 나오게 만드는 고전적인 오프바이원입니다.

직접 구현한 코드가 깨지는 곳은 경계입니다. 26번 열이 Z이고 27번이 AA, 52번이 AZ이고 53번이 BA, 702번이 ZZ이고 703번이 AAA입니다. 26이나 702를 틀리는 함수도 그 양옆 수십 개 값에서는 멀쩡해 보이므로, 바로 그 숫자들로 시험할 값어치가 있습니다.

현실적인 상한은 16,384열, 즉 XFD입니다. 엑셀이 여기서 멈추며 2007년부터 그랬습니다. 구글 시트는 한 시트에 더 허용하지만 열이 아니라 셀 수를 세므로, 먼저 마주치는 한계는 행이 몇 개인지에 달려 있습니다.

0부터 세는 모드가 있는 이유는 대부분의 라이브러리가 열 색인을 0부터 매기는데 애플리케이션은 1부터 이름 붙이기 때문이고, 그 어긋남이 스크립트가 조용히 엉뚱한 열에 쓰게 되는 지점입니다. 수식을 만들고 있다면 1부터 센 답을, 파싱한 셀 배열을 색인하고 있다면 다른 쪽을 쓰십시오.

자주 묻는 질문

왜 AA = 26이 아님?

0 자릿값이 없기 때문. 패턴은 A=1·…·Z=26·AA=27·AB=28·…·AZ=52·BA=53 등. 이게 bijective base-26 — 모든 양의 정수가 유일한 letter 표현을 가지며 그 반대도.

Excel에 정말 컬럼 제한 있음?

예: 모던 Excel은 16384 컬럼(XFD). Google Sheets는 18278 컬럼(ZZZ)에서 캡. 둘 다 이 도구가 만들 수 있는 것보다 훨씬 위.

R1C1 표기는 어디에 쓰나?

셀을 문자와 숫자 대신 행 번호와 열 번호로 가리키고, 상대 참조를 R[-1]C 같은 오프셋으로 적는다. 그 형태의 수식은 어디로 복사되든 같은 모양으로 읽히므로, 코드로 수식을 만들거나 서로 다른 셀에 있는 두 수식을 비교할 때 훨씬 편하다.

열을 삽입했더니 열 문자가 밀린 이유는?

문자는 정체성이 아니라 위치다. 열을 하나 삽입하면 오른쪽의 모든 열 이름이 바뀌므로, 그 뒤로 K열을 가리키던 메모나 매크로나 문서는 다른 데이터를 가리키게 된다. 참조 자체는 멀쩡해 보이기 때문에 조용히 어긋난다. 머리글 이름이나 이름 있는 범위는 삽입을 견디지만 문자는 그렇지 못하다.

관련 도구