본문 바로가기
[엑셀] 비어있는 셀 찾아서 채우기 비어있는 셀을 찾아서, 값을 채울 일이 있을지 모른다.우선 찾기를 할 영역을 선택한다. 같은 값을 넣어줄 영역을 선택해주는 것이 좋다.   F5키를 눌러 이동창을 꺼내고, 좌하단에 있는 옵션버튼을 눌러준다.   빈셀을 선택해준다.    선택이 잘 되었는지 확인한다.   F2키를 눌러 첫번째 셀에 값을 입력하고, CTRL+ENTER키를 눌러주면 동일한 값이 입력된다.    아주 가끔이지만 매우 요긴하게 쓸수 있다.   끝. 2022. 4. 8.
[엑셀] 배열수식(ARRAY_FORMULA)의 이해 배열수식을 간단하게 정리 해보자. 단계1. 사용이유아래 과 같은 데이터 테이블이 있다고 하자. 의 데이터를 로 요약해서, 각 과일의 판매량 합계를 기재할 예정이다. 과일별로 소팅을 해서 SUM함수를 걸거나, 피벗테이블을 만드는 방법 등이 있다. 배열수식은 어디까지나, 원본 데이터를 건드리지 않고, 요약표를 별도로 만들 때 사용하기 용이한 방법이다.*피벗테이블 대비 유연한 요약표 작성이 가능하고, 새로고침 과정이 필요없는 것도 장점이라 하겠다.    에 아래와 같이 IF수식을 사용하였다. F3의 값이 C3와 같다면, 판매량을 반환하는 방식이다. 단일 셀값을 비교한다는 뜻이 되겠다.    그럼, 의 사과를 과일열 전체와 비교하고, 과일명이 같다면, 각 판매량을 얻어내는 방법은 아래처럼 영역을 찍어주면 될까?.. 2022. 4. 8.
[엑셀] 빠른 채우기 인공지능이라 할건 없지만, 의외로 아래와 같이 짜증나는 텍스트 자르기에 유의미한 기능이다.   빠른 채우기를 사용해보자. 맨 첫 행은 채워줘야 패턴을 찾는다.   같은 패턴을 가진 열(채우기를 할 열)을 선택하고,    리본메뉴의 홈 > 편집 > 채우기 드롭다운에서 빠른 채우기를 누르는 것으로 끝이다.   값이 잘 들어간 것을 알 수 있다.    애석하게도 참조값이 바뀌어도, 결과값이 변하지는 않는다. 함수와 다른 점이라 하겠다.   또한 참조값의 열 array에서 엑셀이 패턴을 찾지 못하면, 에러가 난다.   이름이나 주소를 간단하게 처리하기는 나쁘지 않다. 2022. 1. 25.
[엑셀] 병합된 셀이 있을 때, 복사 붙여넣기 복사 붙여넣기만 잘하는 것도 쉽지 않을 때가 있다.아래와 같이 RANGE 안에 병합된 셀들이 있다는 극단적인 가정을 해보자.    복사할 내용이 아래 셀처럼 되어 있다면, 드래그로는 병합셀 때문에, 쉽지가 않다.몹시 당연하지만, 병합셀을 풀어주면 된다.하지만, 우리가 처하는 상황은 녹녹치 않을 것이다.    복사할 영역을 선택하고,    대상 영역을 잡아서 붙여넣기 해준다.    그럼 아래와 같이, 셀 병합이고 나발이고, 그대로 복사가 된다.    가끔 같은 내용을 반복해서 복사할때, 유용하게 사용할 수 있다. 2021. 12. 15.
[엑셀] 특정 날짜의 주차 계산, 주차별 시작날짜/마지막날짜 계산 날짜 계산은 엄청 귀찮으므로, 자주 안 쓰는건 그냥 적어두자.다른 블로그 찾다가 발견해서 적어놨던건데, 어디서 봤는지는 까먹었다. 주차를 먼저 계산해본다. 월요일부터 주차를 계산하는게 일반적이니 마지막에 2를 적는다.=WEEKNUM(DATE(연,월,일),2)    거꾸로 주차를 기준으로 해당주차에 대한 시작 날짜(월요일)과 마지막날짜(일요일)를 알고 싶으면, 시작 날짜는=MAX(DATE(연,1,1),DATE(연,1,1)-WEEKDAY(DATE(연,1,1),2)+(주차-1)*7+1) 마지막 날짜는=MIN(DATE(연+1,1,0),DATE(연,1,1)-WEEKDAY(DATE(연,1,1),2)+주차*7)  깊게 생각하면 머리 아프다. 2021. 11. 16.
[엑셀] 행추가시 이름관리자/이름정의 반영하기(동적인 이름정의) 이름정의 기능을 사용하고 있다면, 이미 초보자의 영역은 넘었다.이미 알겠지만, 엑셀은 피벗테이블을 포함한 표형식의 DB형식의 모습과 그냥 범위로 나열되어 있는 형식의 데이터가 있다. 아래와 같은 범위로 된 데이터가 있다.데이터 표가 아니다.이럴때, 흔히 표의 특정 영역을 지정하여, 이름정의를 한다.B2:C20의 영역을 잡아서, 과일이름 영역이라 이름정의를 했다.    정의된 이름(범위)을 사용해서 VLOOKUP 함수를 건다면 다음과 같다.가장 일반적이지만, 오류의 가능성을 가진 형식이다.    오류가 발생하는 이유는 다음과 같이, 17번 이후에 18번 행(신규 행)이 추가되었을때,이를 이름정의에서 동적으로 반영하지 못한다는 점이다.    물론, 102번처럼, 이름정의가 사용된 범위의 중간에 행이 들어가게.. 2021. 11. 16.
[엑셀VBA] 엑셀파일 용량줄일때, USEDRANGE 문제있는 시트 찾기 엑셀 파일의 용량이 커지는 이유는 많겠지만, USEDRANGE가 잘못 설정되는 경우가 많다.한마디로 말하면, CTRL이나 SHIFT 단축키 치다가 실수로 10만번째 행이 사용중인 영역으로 인식되는 경우라 하겠다. 서너개의 시트로 구성된 파일이라면, 일일이 CTRL+END키로 USEDRANGE를 체크하면 되겠지만,워크시트가 스무개가 넘어가면, 그 또한 일이다.    과거 USEDRANGE의 마지막 셀주소를 찾는 글을 쓴 적이 있는데, 아주 약간만 변형해서, 사용해 본다.    왼쪽부터 SHEET INDEX, 마지막 셀의 ROW(행), COLUMN(열), SHEETNAME 순서로 나온다.귀찮아서, HEAD는 안붙였다. 아래 예시에서 보면, Sheet1번의 마지막 행이 이상하다는 걸 알수 있다.   물론, 용.. 2021. 9. 24.
[엑셀VBA] 엑셀함수를 텍스트로 넣기 엑셀VBA의 사용자 함수는 다른 사람과 공유하기가 어렵다.이번에 하고자 하는 것은 반복 사용되는 엑셀함수를 매크로로 만들어 두는 것이다. 말이 좀 애매한데...아래와 같은 표가 있다고 하자    예를 들어 올해(21년) 실적과 전년(20년) 실적의 성장율을 구한다고 하자. 시트에서 함수를 쓴다면,=(올해실적 - 전년실적) / 전년실적이라는 함수를 작성해야 한다. 괄호치기도 그렇고, 전년실적을 두번 찍어주는 것이 귀찮다.   아래 기능이 되었으면 한다.- 매크로로, 올해실적과 전년실적 셀을 선택하면, 해당 함수가 기재된다.- 자동완성을 써야할 가능성이 높으므로, 상대참조가 먹도록 한다.  마찬가지로, 달성율과 RATE함수를 활용한 CAGR을 구해본다.(옆 창은 만든 매크로를 모아놓은 사용자폼이다.)    .. 2021. 8. 9.
[엑셀] 병합된셀 순번(인덱스넘버) 넣기 재야의 고수들이 이미 많이 만들어두었지만, 여전히 나에게는 익숙해지지 않는 것이 있었으니, 병합된 셀에 순번을 넣는 것이다.몇 번 구글링을 해본 결과, 가능한 대표적인 방법은 2가지로, MAX 와 COUNTA 이다.   MAX먼저, 아래 그림의 왼쪽에 보이는 MAX는 단독으로 쓸 수 있다.순번을 매길 셀을 선택한 이후에 첫번째 셀에 아래와 같은 수식을 입력한다.=MAX($A$1:A1)+1 여기서 A1은 머릿글행이라고 봐도 좋고, 순번이 시작되는 바로 위 셀이라고 생각해도 좋다.    사용상 주의점 : 절대 머릿글행에 숫자값이 있으면 안된다.보면 알수 있다시피, 행이 아래로 내려가면서 그보다 위쪽의 값들의 최대값보다 1큰수를 넣어주는 방식이다. 아래처럼 머릿글에 2가 있으면, 다음 행 값은 3이 된다.  .. 2021. 8. 9.
[엑셀VBA] 매크로 창(패널) 만들기(USERFORM) v0.1 매크로 창(패널) 만들기(USERFORM) USERFORM은 사용자가 입력하는 값을 받는 기능으로 사용하는데,매크로 패널처럼 사용하고 싶다.리본메뉴를 사용하는 편한방법이 있지만, 탭을 클릭하기가 너무 귀찮다. 인터넷을 몇시간 뒤적이다가, 아래처럼 패널을 완성했다.    테스트를 한번 해보자.개인적으로 리본메뉴에 넣는것보다는 사용하기 편한듯하다.    MOUSE HOVER 기능을 찾아 넣었더니,마우스 좌표를 찾을때마다 껌뻑이는 관계로 빼고 사용하는 것이 좋겠다.    끝. 2021. 7. 23.
[엑셀VBA] 날짜 자동 기재, 연습용 더미 데이터 생성 날짜 자동 기재, 연습용 더미 데이터 생성 엑셀을 처음 켰을 때, 당신은 무엇을 가장 먼저 하는가?    아마, 반복적으로 하는 작업 중 하나가, 날짜 열을 생성하는 것이다. 대부분 시작일자를 치고, 드래그하여 만들텐데, 귀찮으니, VBA로 만들어 보자. 방법은 여러가지가 있겠지만,내가 하고 싶은건- 시작일자와 종료일자를 입력하면, - 아래쪽으로 자동입력 되는 형태이다. 요런식으로....    날짜가 입력되었으면, 우측에 연습용 데이터를 넣어본다.내가 할 방식은 작은 수와 큰 수를 넣으면, 랜덤방식으로 정수를 넣는 것이다. 아래와 같이 더미데이터가 랜덤으로 생성된다.    과정을 GIF로 보자    코드는 아래와 같다.취향과 용도에 따라서, 바꿔서 사용하면 되겠다.     물론, 근본은 없는 코드이다. 2021. 7. 20.
[엑셀] PDF에 있는 표를 엑셀로 옮길때.. 무자비한 PDFPDF에 있는 표를 엑셀로 옮길때.. 그냥 텍스트로 들어가지는 경우가 있다. 아니 거의 대부분 그렇다고 봐야한다.아래와 같은 표가 있다고 하면,    그냥 카피-페이스트를 하면, 이런식으로 붙는다.    CSV파일 변환자세히 보면, 컬럼이 공백으로 분리되어 있음을 알 수있다.방법은 PDF 표복사 → 메모장 붙여넣기 → CSV파일 저장하기 → 엑셀에서 CSV불러오기 순서로 진행하면 된다. 표를 복사해서 메모장에 넣어준다. 아래 회사명처럼 공백이 이상한곳에 있는 경우, 임의로 붙여줘야한다. 인공지능 따위는 없다.    CSV파일로 저장한다. 여기서 한글 인코딩 방식을 잘 봐둔다. UTF-8이다.    CSV파일 불러오기엑셀 데이터 탭에서, 텍스트/CSV 메뉴를 눌러주자.    엑셀 버전마다 보.. 2021. 6. 29.