everydayminder
엑셀/구글스프레드시트 - 날짜와 시간을 분리 추출하는 3가지 방법 2023-4-7 10:00:00 와 같은 날짜 정보가 있다고 가정해 보자. 만약, 이 값으로부터 2023-4-7이라는 날짜와 10:00:00 이라는 시간을 각각 분리하고 싶다면 어떻게 하면 좋을까? 엑셀 혹은 구글스프레드시트를 사용하여 데이터를 관리하다 보면, 분명히 이 값을 분리 사용해야 하는 순간이 오기 마련이다. 본 글에서는, 이 두 가지 값을 분리하는 방법 3가지에 대해 정리하고자 한다. 방법 1 - 날짜/ 시간 관련 함수 사용하기 날짜, 시간과 관련된 함수를 사용하는 가장 정직한 방법이다. year() month() day() hour() minute() second() 함수를 써서, 각각 연/월/일/시/분/초 값을 추출할 수 있..
엑셀/ 구글스프레드시트 - 필터된 데이터로 계산하려면 subtotal 함수를 써보자 엑셀 혹은 구글스프레드시트를 쓰면서 많이 사용하는 기능 중, 필터 기능과 sum() 함수가 있다. 그런데, 이 두 기능을 함께 사용하면 원하는 결과를 얻지 못하는 상황이 발생한다. 예제 본 예제는 구글스프레드시트나 엑셀이나 동일하게 동작하며, 이 글에서는 구글스프레드시트로 테스트 하였다. 위와 같은 예가 있다고 가정하자. 그러면, 이 값들의 합을 구하려면 = sum(range) 의 형식을 사용하면 된다. 즉, 위와 같은 결과를 얻을 수 있다. 그런데, 이 상태에서 필터를 적용해서 계산해 보면 어떻게 될까? 위에서 보다시피, 식사 항목으로만 필터 조건을 걸었는데, 전체 입력 데이터를 대상으로 합이 계산되었다. 이 상황에서 ..
엑셀 - 제곱근 구하기, 3제곱근, 4제곱근 구하려면? 엑셀에서 제곱근을 구하는 방법은 여러 가지가 있다. 우선 기본 함수를 사용하는 방법부터 알아보고, 기타 다른 방법으로도 제곱근을 구해보자. SQRT 함수를 사용한 2제곱근 구하기 엑셀에서 제공하는 SQRT(square root) 함수를 사용하면, 제곱근 (2제곱근)을 쉽게 구할 수 있다. =SQRT(값) =SQRT(셀주소) 구하고자 하는 값이 2제곱근이라면, SQRT() 함수 하나로 충분할 것이다. POWER 함수를 사용한 3제곱근, 4제곱근 구하기 그러나, SQRT() 함수로는 3제곱근, 4제곱근 등 N제곱근을 구할 수 없다. 따라서, 몇 승(제곱)을 구해주는 함수인 POWER()함수를 사용해 보자. 이쯤해서 학생 때의 기억을 되살려보자. 2제곱근..
엑셀 - 월말 날짜 구하기 매월 1일은 말 그대로 구하기 쉽다. YYYY-MM-01 형식으로 표기하기만 하면 되기 때문이다. 그런데, 어떤 달의 마지막 날짜는 어떻게 구하면 좋을까? 주먹구구로 구하기 위에서 말로 풀어 적은 내용이 곧 힌트라 할 수 있다. 일단, YYYY-MM-01 형식으로 표기하자. 그리고, 그 값에서 -1을 하면, 이전 달의 마지막 날이 될 것이다. edate()함수를 써보자. edate(기준 날짜, 몇 개월 후) 이를 응용하되, 날짜를 1일로 지정한다면 아래와 같은 결과를 얻을 수 있다. * 오늘 날짜가 2022-09-01 이라면, * =edate($G$1, 1)-1: 2022-09-30 * =edate($G$1, 2)-1: 2022-10-31 전문 함수 사용하기: eomonth()..
엑셀/구글스프레드시트에서 몇 달 전/후를 구하려면? 엑셀 혹은 구글스프레드시트를 사용하면서, 몇 달 전/후를 표시하고 싶은 경우가 발생할 수 있다면, 아래의 방법을 응용해 보자. 몇 일 전/후를 구하려면? * 날짜 - 숫자 오늘이 2022-10-02 라면, N일 전/후라면 그대로 그 날짜 만큼의 숫자를 더하거나 빼주면 된다. 2022-10-02 + 3 = 3일 후 2022-10-02 - 7 = 7일 전 몇 주 전/후를 구하려면? * 날짜 - 숫자 * 7 위의 방식을 그대로 응용하되, x7을 하면 N주 전/후가 된다. 2022-10-02 + 3 * 7 = 21일 후 = 3주 후 2022-10-02 - 2 * 7 = 14일 전 = 2주 전 몇 달 전/후를 구하려면? 그런데, 한 달 전 혹은 한 달 후를 어떻..
엑셀 - 여러 if 조건 and, or, not 활용하기 프로그램을 작성하면 if 문의 조건 절에 쓰는 조건이 복합 조건인 경우가 많다. if 조건절1 && 조건절2 if 조건절1 || 조건절2 if 조건절1 && (조건절2 || 조건절3) 즉, 우리가 검증하고자 하는 조건절이 항상 단일 조건을 아닐텐데, 어떻게 위와 같은 복합 조건을 엑셀에서 표현할 수 있을까? 프로그래밍 언어에서 &&는 AND, ||는 OR라는 사실을 바탕으로, 그대로 써보면 안타깝게도 동작하지 않는다. =IF(A1='포도' OR A1='복숭아', '좋아하는 과일', '좋아하지 않는 과일') 엑셀 IF와 AND, OR, NOT 사용법 두 개의 문법을 별도로 접근해 보자. IF의 사용법은 아래와 같다. IF(조건절, 조건절이 참일 때의..
엑셀/ 구글 스프레드시트 공통 - 날짜로부터 쿼터/ 분기 계산하기 날짜로부터 쿼터, 즉 몇 분기인지 계산하려면 다음과 같이 하면 된다. 본 방법은 엑셀과 구글 스프레드시트에서 모두 사용할 수 있다. * 입력날짜: 2022-09-03 * 출력결과: Q3/2022 * 입력날짜: 2020-01-01 * 출력결과: Q1/2020 위와 같이 결과를 얻고 싶다고 가정하자. 필요한 함수 변환에 필요한 함수는 다음과 같다. year() month() roundup() 또는 int() concatenate() 계산방법 어떤 날짜가 주어졌다면, MONTH() 함수를 사용하면 달을 구해주고, YEAR() 함수를 사용하면 년도를 추출해준다. 다음으로 쿼터(분기)를 구해보자. 1/2/3월: 1분기 4/5/6월: 2분기 7/8/..
iferror - 에러가 발생하는 셀을 우아하게 처리하기 엑셀을 사용하면서 이런 저런 수식을 사용하다보면, 뜻하지 않은 곳에서 의도치 않은 에러 메시지를 보게 된다. #VALUE! #DIV/0! #N/A #NAME? 와 같이 대상 셀에 문제가 발생할 경우, 이대로 보여주는 것보다 내가 의도한 대로 다른 값을 보여주면 훨씬 좋을 것이다. 마치, 시스템 에러를 내뱉는 것보다는 사용자 친화적인 에러 메시지를 보여주는 것이 더 나은 선택인 것처럼. #VALUE!는 입력한 수식에 오류가 있을 때 발생하는 에러이다. #DIV/0!는 divide by zero이다. 즉 어떤 수를 0으로 나누려고 할 때 발생한다. #N/A는 참조하려는 값을 찾을 수 없을 때 발생한다. #NAME!은 잘못된 이름이 사용되었을 경우 발생..
구글 파이낸스 - 환율 조회 구글 파이낸스르 사용하면 환율 조회를 하기 위해, 다른 사이트를 매번 방문할 필요가 없다. 구글 스프레드시트를 사용하는 사람이라면, GOOGLEFINANCE() 함수를 익혀보자. GOOGLEFINANCE() 함수는 다양한 인자를 받아들이지만, 환율에 국한해서는 다음의 사용법만으로도 충분하다. =GOOGLEFINANCE("CURRENCY:원본대상") 원본부분에 바꿀 currency를, 대상 부분을 바뀔 currency를 적으면 된다. 따라서, 다음과 같은 응용을 해보자. =GOOGLEFINANCE("CURRENCY:KRWUSD") =GOOGLEFINANCE("CURRENCY:USDKRW") =GOOGLEFINANCE("CURRENCY:JPYKRW") =GOOGLEFINANCE(..
엑셀 조건부 서식 사용법 데이터를 시각화 하고자 하는 욕구는 어디에나 존재한다. SQL 등의 쿼리로 데이터를 직접 추출하기도 하지만, 엑셀로 모아놓은 데이터에서도 시각화의 필요성은 여전히 중요하다. 특히, 어떤 조건에 맞는 데이터를 주변 데이터와 다르게 보여줄 수 있다면, 데이터의 특성을 파악하는데 큰 도움이 된다. 엑셀에서는 이를 위해 조건부 서식 기능을 활용하면 쉽게 데이터를 시각적으로 분류하여 접근할 수 있다. 샘플 데이터 이와 같은 샘플 데이터에 조건부 서식을 적용해 보자. 어떤 숫자의 분포가 있는데, 이 숫자가 80보다 크면 녹색으로, 31-60은 노란색으로, 30보다 작으면 빨간색으로 분류해 보고자 한다. 조건부 서식 적용하기 먼저 조건부 서식을 적용할 범위를 드래그하여 설정한다. 리본 메뉴로..
엑셀 인쇄영역 설정/ 해제/ 나누기 엑셀로 문서 편집을 하고, 인쇄를 할 때 알아두면 편한 기능이 엑셀 인쇄영역 기능이다. 엑셀 문서가 A4 용지 한 장에 쏙 들어갈 경우에는 그다지 문제가 되지 않겠지만, 엑셀 문서를 A4 용지 크기보다 넓은 영역을 사용하는 경우가 많다. 게다가 여러가지 수식, 계산, 노트까지 곁들여서 작성하는 경우라면 엑셀 인쇄영역 기능은 편의 기능이 아니라 필수기능이 된다. 혹시라도 엑셀 파일을 인쇄할 때 여백 조정을 통해 영역을 조정하고 있다면, 이제는 엑셀의 인쇄영역 설정/ 해제/ 나누기 기능을 써보자. 샘플 아래의 샘플을 사용하여 테스트해 보자. 사실, 12월까지 표시된 달력의 일부이다. 인쇄 미리보기를 하면, 전체 페이지가 출력되는 것을 확인할 수 있다. 인쇄영역 설정 인쇄를..
몇 주차인지 엑셀로 쉽게 확인하기 주간 데이터를 비교하는 경우가 있다. 날짜로 표기하면, 예를 들어 3/7-3/12와 같이 표기하면 된다. 그런데, 보고서를 쓰다보면 전주 대비 어느 정도 변화가 있는지를 보고해야 하는 경우가 생긴다. 그럴 때는, 구체적인 날짜 3/7~3/12가 필요한 것이 아니라, 몇 주째라는 정보만으로 충분하다. 이럴 때마다 달력을 펼쳐놓고, 1/1부터 한 주씩 세어 봐야 할까? 이것을 대신해 주는 엑셀 함수가 있으니, 우리는 이 함수가 무엇이지 알아 뒀다가 필요할 때 쓰면 된다. weeknum 함수 이렇게 몇주차인지 세어주는 함수가 weeknum 함수이다. 사용법은 간단하다. =weeknum(셀 주소) 그리고, 해당 셀 주소에 날짜 형식의 데이터가 들어 있기만 하면 된다. 일요일부터..
엑셀 중복값 찾기, 중복값 제거하기 여러 곳에서 데이터를 수집하다 보면, 같은 데이터가 여러 번 중복되는 경우가 발생할 수 밖에 없다. 이번 글에서는 엑셀을 사용하여 중복값을 찾거나, 중복값을 제거하는 방법에 대해 다룬다. 중복값 샘플 중복값 찾기 및 제거하기를 위해 아래와 같은 샘플을 사용한다. 딸기 바나나 사과 바나나 배 포도 사과 귤 멜론 망고 파인애플 수박 복숭아 복숭아 엑셀에서 중복값 찾기 먼저, 원본 데이터에서 중복 데이터가 얼마나 존재하는지부터 찾아보자. 이번에 사용할 함수는 countif함수이다. countif(범위, 조건) 의 형식으로 함수를 사용하면 되므로, 위의 샘플이 있는 영역을 범위 조건에 넣고, 내가 찾고자 하는 값을 조건에 넣으면 그 조건에 맞는 수를 확인해 줄 것이다. 위와 ..
엑셀 콤보박스로 사용자 선택값을 보여주고, 유효성 검사까지 엑셀을 사용하여 여러 사용자들로부터 입력값을 받거나, 데이터별 특정 조건을 구분할 필요가 있을 경우가 있다. 이 때, 각 사용자마다 직접 입력하라고 하면 어떤 일이 발생할까? 예를 들어, 어느 장소로 워크샵을 간다고 가정하고 팀원들의 이동수단(교통수단)을 조사한다고 해보자. 만약, 임의의 빈 칸을 던져주고 사람들에게 입력하라고 한다면 아래와 같이 천차만별의 데이터가 수집될 것이다. 버스 지하철 도보 오토바이 자차 문제는 이렇게 수집된 데이터는 정규화가 되어 있지 않다. 예를 들어, 5. 자차라고 하는 항목도 누군가는 자가용, 내차, 내 차, 직접 등으로 임의의 값을 입력할 수도 있을 것이다. 이렇게 되면, 수집된 데이터를 분석하기 쉽지 않다. 게..
엑셀 줄바꿈 방법 (윈도우즈, 맥) 엑셀 스프레드 시트에 긴 문장을 입력하다보면, 내용이 잘려서 일부분만 노출된다. 긴 문장의 본문 내용을 확인하려면 셀의 크기를 늘려서 보거나, 본문의 내용이 사용자에게 제대로 노출되도록 하는 방법이 있다. 본 글에서 다루는 방법은 후자이다. 사용자가 엑셀의 셀크기를 굳이 늘리지 않아도 내용을 확인할 수 있도록 엑셀 줄바꿈 해주는 방법이다. 예제 다음과 같은 문장이 있다고 치자. 잉글랜드의 축구 클럽 아스널 FC의 명칭은 왕립 무기고(Royal Arsenal, 로열 아스널)에서 일하던 노동자들이 창립한 것에서 유래했습니다. 이 문장이 특정 셀에 있고, 그 바로 옆의 셀이 비어 있는 경우와 비어 있지 않은 경우 아래와 같이 출력되는 것을 확인할 수 있다. 즉, 옆의 셀에 ..