
[코딩 개념 #2] 코딩의 첫걸음: 데이터를 담는 마법의 상자, '변수' (엑셀 셀 주소만 알던 당신에게)
지난 글에서 우리는 엑셀 함수가 '계산기'라면, 프로그래밍은 '레시피'와 같다고 이야기했습니다.
오늘은 그 위대한 레시피를 작성하기 위한 가장 첫 번째 재료, 바로 **'변수(Variable)'**에 대해 알아보겠습니다.
"어려운 단어 같은데요?" 라고 생각하셨나요? 전혀요.
사실 당신은 이미 매일 변수와 비슷한 것을 사용하고 있습니다. 바로 엑셀의 '셀 주소'입니다.
우리는 A1 셀에 '3.3%'라는 값을 넣어두고, 다른 셀에서 =B1 * A1처럼 A1이라는 '이름'을 불러와 사용하죠.
A1 셀의 값이 '4.0%'로 바뀌면, 그 셀을 참조하는 모든 수식의 결과도 자동으로 바뀝니다.
변수는 바로 이 '셀 주소'의 프로그래밍 버전입니다.
데이터를 잠시 담아두고, 필요할 때마다 이름만 불러서 편하게 사용하기 위한 **'이름표를 붙인 상자'**라고 생각하면 완벽합니다.
변수는 왜 '마법의 상자'일까?
컴퓨터에게 일을 시킬 때, 모든 데이터를 숫자로 기억해서 직접 사용할 수는 없습니다.
어제 A쇼핑몰의 할인율이 15%였고, 오늘 B쇼핑몰의 할인율이 20%라면, 우리는 이 숫자들을 그냥 0.15, 0.2로 기억하는 대신, 다음과 같이 상자에 담아 구별합니다.
- 어제_할인율 이라는 상자를 만들고, 그 안에 0.15를 넣는다.
- 오늘_할인율 이라는 상자를 만들고, 그 안에 0.2를 넣는다.
이렇게 하면 나중에 계산할 때 "어, 0.15가 뭐였더라?" 하고 헷갈릴 필요 없이, 오늘_판매금액 * 오늘_할인율 처럼 훨씬 명확하고 안전하게 일을 처리할 수 있습니다.
'상자'를 사용하는 2가지 핵심 동작
프로그래밍에서 이 마법의 상자를 쓰는 방법은 딱 두 가지뿐입니다.
- 선언 (Declaration): 상자 준비하기 컴퓨터에게 "나 이제부터 '고객이름'이라는 이름의 상자를 쓸 거야!"라고 알려주는 단계입니다. 어떤 종류의 데이터를 담을지(글자, 숫자 등) 알려주기도 합니다.
- 할당 (Assignment): 상자에 데이터 넣기 준비된 상자에 실제 데이터를 넣는 과정입니다. 보통 등호(=)를 사용합니다. 고객이름 = "김철수" 이렇게 하면, '고객이름'이라는 상자 안에는 "김철수"라는 글자가 쏙 들어갑니다. 만약 다음에 고객이름 = "이영희"라고 다시 명령하면, 상자 속 내용물은 "이영희"로 바뀌게 되죠. 내용물은 계속 변할 수 있지만, '고객이름'이라는 상자의 이름은 그대로입니다. '변할 수 있는 수'라는 뜻의 '변수(Variable)'라는 이름이 붙은 이유입니다.
실무에서 변수가 당신의 퇴근을 앞당기는 순간
개념은 알겠는데, 이걸로 뭘 할 수 있을까요?
상황 1: 세율이 바뀔 때
보고서의 모든 수식에 원천징수 세율 3.3%를 직접 * 0.033으로 입력했다고 상상해 보세요.
만약 세율이 3.5%로 바뀐다면? 수십 개의 수식을 찾아서 하나하나 0.035로 고쳐야 하는 끔찍한 일이 벌어집니다.
하지만 처음에 세율 = 0.033 이라고 변수 상자에 세율을 담아두고 수식에서는 * 세율 이라고 썼다면? 우리는 맨 위 변수의 값만 세율 = 0.035로 딱 한 번만 고쳐주면 모든 계산이 순식간에 끝납니다.
실수를 줄이고, 시간을 버는 핵심이죠.
상황 2: 수백 명에게 개인화된 안내 메일 보내기
{고객명}님, 주문하신 {상품명}의 배송이 시작되었습니다. 라는 메일을 보낸다고 해봅시다.
고객명과 상품명이라는 빈 상자(변수)를 만들어두고, 엑셀 목록의 첫 번째 줄에서 "김철수"와 "노트북"을 가져와 각 상자에 넣은 뒤 메일을 보냅니다. 다음엔 두 번째 줄의 "이영희"와 "모니터"를 가져와 똑같은 상자에 (내용물만 바꿔서) 넣고 메일을 보냅니다.
이 과정을 수백 번 반복시키는 것, 이것이 바로 자동화의 기본 원리입니다.
정리: 생각의 틀을 바꾸는 첫 단추
오늘은 프로그래밍의 가장 기본 단위인 '변수'에 대해 알아봤습니다.
변수는 단순히 데이터를 담는 상자가 아니라, 복잡한 작업을 유연하고 효율적으로 처리하기 위한 생각의 틀입니다.
내가 다루는 데이터에 '이름'을 붙여주는 이 작은 습관이, 나중에 배울 반복문, 조건문과 만났을 때 얼마나 강력한 자동화 도구로 변신하는지 직접 느끼게 되실 겁니다.
다음 시간에는 이 재료를 담아둔 '상자(변수)'를 가지고, 지치지 않고 수백, 수천 번의 요리를 하는 '반복문'에 대해 알아보겠습니다.
'코딩으로 시간 벌기 > 코딩 개념' 카테고리의 다른 글
| 엑셀 함수만으론 부족할 때: '프로그래밍적 사고'가 필요한 순간 (7) | 2025.08.27 |
|---|
