Sheet: ABCD…, 또는 가나다라.. 자동 채우기

Excel 로 대변되는 Spread Sheet 를 사용해본지가 벌써 40년이 다 되어가는 듯 하다. 최초에 맛을 본게 VisiCalc 인가 라고 불렸던 Sheet 였고, 그리고 Lotus 123 를 아주 잠깐 써봤지만, 결국 제대로된 입문은 Excel 이었다.

이젠 Excel 을 만질 일은 별로 없긴 하지만, 대신 Google Sheet 나 LibreCalc 는 심심찮게 사용하고 있기에, 그 두가지에서 이 기능을 수행하는 방법을 간략히 정리한다.

이 내용은 YouTube 동영상에서 큰 도움을 얻어 작성할 수 있었다.

내가 하고 싶은 건 이런 거다.

A,B 를 입력하고 파일 핸들을 끌어서, 자동으로 알파벳이 증가되어 입력하게끔 하고 싶다.
한글도 마찬가지. 가,나 를 입력하고, 파,하까지.

아주 예전부터 이게 하고 싶었었는데, 어떻게 풀어나갔었는지에 대한 기억이 없다. 절실했던 기능이 아니었기에 그냥 대충 넘겼었나 보다.

정리하면, 이게 그냥 되는 기능은 아니다. 약간은 복잡한(?) 방법을 써야 하고, 한글은 그나마 그 방법이 통하지 않는다.

먼저 알파벳.

: Google Sheet, LibreCalc 에서 모두 잘 작동한다.

이걸 쓰기 위해서는 char 함수를 써야 한다. char 는 아스키코드를 입력하고, 이 값에 해당하는 문자를 돌려주는 함수다. A 의 코드는 65 이므로, char(65)의 값은 A 가 된다.

그리하여, 이런 식으로 셀에 넣고, 파일 핸들을 끌면 자동으로 될 듯 한데..?

=char(65)

기대는 무참히 깨지고, A 만 난무하는 상황이 돼 버렸다. char 안에 들어간 65 는 단순 인수로, 자동 채우기에서 인식하지 않기 때문이다.
이를 위해서, 살짝 편법을 써야 하는데..

사람들은 row(또는 col) 을 생각해냈다.
row 는, 셀 하나, 또는 주어진 범위에 대해, 첫번째 인수의 행값을 반환한다.
row(A4) 는 4 가 되고, row(c287:f538) 은 287 이 된다.

따라서, 위 수식을 다음과 같이 고치고, 과감히 파일 핸들을 끌면!

위와 같이 원하는 결과를 얻을 수 있게 된다.
row 뒤의 z65 는 65 를 얻기 위한 의도된 값이므로, z 는 아무런 의미가 없다. a65 로 해도 되고, az65 도 된다. 행만 65면 된다는 뜻.

또, 소문자를 쓰고 싶다면 97 을 넣어준다.

그러나, ABCD.. 를 자주 사용해야 한다면, LibreCalc 기준, ‘정렬 목록’을 만드는 편이 낫다. 구글 시트엔 이 기능은 없는 듯 하다.

  • 일단, 위와 같이 원하는 자동 채우기 목록을 만든다. (만들지 않으면, 수동으로 하나 하나 입력해 넣을 수도 있다.)
  • 만든 후, 바로 위 그림처럼 그 모두(A~Z 까지)를 선택한다.
  • 도구 – 기본설정 – LibreOffice 캘크 – 정렬 목록 으로 이동한 뒤, ‘목록 가져오기‘ 항목이 바로 위에 선택한 셀이 맞는지 확인한 후, ‘복사‘를 누른다.
‘복사’ 를 누르면,
A,B,C,D… 가 자동 추가된다.

아니면, ‘새로 만들기’를 누르고 하나 하나 정성스레 입력해줘도 된다.
가나다라.. 도 마찬가지 방법으로 만든다.

한글

구글 시트에선 방법을 찾지 못했다. 구글 시트엔 수동 ‘정렬 목록’을 만들 수 있는 기능이 없다. 따라서 저 방법은 안된다.

리브레나 구글 시트 모두, char 함수를 쓰는 방법은 안된다. char 의 반대(?)는 code 함수인데, 각각에서 ‘가’를 인수로 출력해보면 다음과 같다.

  • 구글 시트 : code(“가”) = 44032
  • 리브레캘크 : code(“가”) = 234

따라서 이 값을 char 에 넣으면 ‘가’를 얻어야 하는데.. 구글 시트에선 성공했으나, 리브레캘크에선 이상한 문자가 출력됐다.
그러나, 제대로 출력이 됐다하더라도 궁극 목표인 ‘자동 채우기’는 불가능하다.

가 다음은 각

따라서, char 를 통한 이 기능 구현은 불가능. LibreCalc 라면 위에서 설명한 방법으로 ‘정렬 목록’을 만들어 사용하면 될테고, 구글 시트에선 마땅한 해결책을 찾지 못했다.


참고로..
호기심에 MS Office Online 에서도 같은 기능을 사용해봤다. 정렬 목록 저장은 역시 안된다. 헌데, 그것보다는 다음 결과에 눈이 확~ 떠져버렸다.

A열은 그냥 문자를 입력했고, B 열은 char(a열), C 열은 code(b열) 을 수행했다.

한글은 모두 63 을 반환하는 말도 안되는 결과를 보여주고 있다. 구글 시트에선 ‘가’의 경우 44032, ‘나’의 경우 45208 이 반환된다.
누구의 잘못일까요? ㅎㅎ

안녕하세요. 글 남겨주셔서 고맙습니다.