[엑셀VBA/초보자] xla 파일 (5일차)
xlsm, xlam열심히 코드를 짯다면, 코드를 관리해야 한다. 엑셀에서 vba 코드를 포함한 문서를 저장하려고 하면, xlsm 파일 확장자가 가장 눈에 띈다. Excel Macro-Enabled Workbook 이라고 적혀있다.이때가 중요하다. 유혹을 뿌리치고, 눈을 밑으로 잠시 내리다 보면, xlam 파일이 보인다. 앞선 글의 내용에서 밝혔든 어떤 vba든간에, 해당 파일(workbook)에서만 맞춰서 작업이 된 것이거나, 어떤 상황에서든 사용할 수 있는 것 둘 중 하나다. 예를 들어, 1번 시트의 데이터를 2번시트의 요약테이블로 정리를 해주는 vba라면, xlsm 확장자를 고르는 게 맞겠고, 전체 시트를 개별 pdf로 추출해주는 vba라면 xlam 확장자를 고르는게 낫다. xlam 파일 활용x..
2024. 8. 21.
[엑셀] 영역에서 N번째 행마다 색 넣기(조건부 서식)
테이블(TABLE) & 영역(RANGE)1줄 또는 N개의 줄마다 서식을 걸어서, 데이터를 읽기 편하게 하는 서식은 테이블에서는 기본으로 제공되지만, 영역에서는 따로 조건부 서식을 지정해줘야한다.!!! 아니, 내가 모르고 있는 뭔가가 있을 수 있다. 원하는 서식아래 그림은 각 일자별로, 5개의 값이 있는 영역이다. 가독성을 높이기 위해서, 회색라인을 쳤다가, 안쳤다를 조건부 서식을 통해 생성하고 싶다.물론 조건부 서식을 활용하지 않더라도 노가다로 색을 칠해줄 수 있지만, 데이터가 변경될 경우 자동으로 들어가지 않는 단점이 있다. STEP #1영역이든 테이블이든 첫번째 행은 HEADER이고, 기본적으로 2번행부터 값이 들어올 것이다. 따라서, 데이터 행의 ROW()값은 {2,3,4,.... } 순서가 ..
2024. 6. 3.
[엑셀] 빠른 실행 도구모음에 원치 않는 아이콘이 계속 생길 때,
빠른 실행 도구모음에 원치 않는 아이콘이 계속 생길 때,빠른 실행 도구모음(QAT, quick access toolbar)을 분명 커스텀 기능으로 채워뒀었는데,저장, undo, redo, touch 기능 아이콘이 계속 생긴다. 여러가지 방법을 사용해봤는데, 계속 앞의 저 네가지 아이콘이 초기화 되길래,엑셀 사용이래 한번도 해보지 않은 업데이트라는 것을 해봤더니, 정상화 된다.오피스 업데이트는 계정 메뉴에 들어가면 있다. 엑셀 뿐 아니라, 워드 등도 같은 문제가 발생했음을 확인할 수 있었다. 업데이트 이후에는 아래 그림처럼 정상화 된다. 같은 문제가 발생한다면 시도해보길 바란다. 끝.
2023. 12. 23.
[엑셀VBA] 엑셀용량이 비정상적으로 커졌을 때,
엑셀용량이 비정상적으로 커졌을 때아주 가끔, 엑셀용량이 비정상적으로 커진 파일들을 보게된다. 몇가지 경우의 수가 있겠지만, 구글링을 통해 여기까지 왔다면, 오빠두엑셀에서 찍어준 몇가지는 시도해봤으리라. 엑셀 파일 크기 줄이기, 모든 해결방법 총정리 :: 엑셀 위키 - 오빠두엑셀엑셀 파일 크기 줄이기, 모든 해결책 총정리 엑셀 파일크기 줄이기 목차 바로가기 내용 요약 이번 포스트에서는 기존 24.1MB 파일을 최대 2.63MB 까지, 약 90% 가량, 파일 크기를 줄일 수 있는 ;엑셀www.oppadu.com 위에 기술된 경우를 제외하고, 용량도 늘지만, 짜증나는 경우는 다음과 같다.- style이 몇 백개 되는 경우- 이름관리자에서 선언된 이름이 몇 백개 되는 경우- 원치 않는 사용영역(UsedRang..
2023. 12. 13.
[엑셀] 다중 조건에 따라 카테고리별 합계(부분합) 구하기
다중 조건에 따라 카테고리별 합계(부분합) 구하기합계를 내야할 대상의 조건이 동일할때, 맨 처음 값에 대해서만 합계를 구하고 싶다. subtotal을 사용하면 간단하겠지만, 다른 방법을 생각해보자.아래와 같은 표가 있다. 표를 수정할 수 없고, 피벗테이블을 사용하지 않을 때 사용할 수 있다. (거의 사용한 적은 없다.) 아래와 같이, 두개의 조건(차종, 브랜드)이 변경되는 행에만 countifs 함수를 통해 ok 텍스트를 넣도록 할 수 있다.=IF(COUNTIFS($B$3:B3,B3,$C$3:C3,C3)=1,"ok","") ok가 표기된 행에 대하여, 대수의 합계를 구해보자=IF(COUNTIFS($B$3:B3,B3,$C$3:C3,C3)=1,SUMIFS($F$3:$F$15,$B$3:$B$15,B..
2023. 9. 14.