학습노트
엑셀 VBA 기초 완성, 원데이 챌린지 챕터4
주요 학습 내용
사용자 정의 함수 만들기
MyCountIf: 조건에 맞는 셀 개수를 세는 CountIF 함수 구현
MySumIf: 조건에 맞는 셀의 값을 합산하는 SumIF 함수 구현
UniqueTextJoin: 중복을 제거한 문자열을 연결하는 TEXTJOIN 함수 확장판 구현
컬렉션(Collection) 활용
고유값만 수집하기 위해 Collection과 On Error Resume Next를 이용하여 중복 방지 로직 구현
데이터 유효성 목록 자동 적용
AddValidation 서브루틴을 통해 특정 셀에 유효성 목록을 자동 생성 (중복 제거된 리스트 기반)
동적 범위 함수 DynamicRange 구현
A열 데이터가 몇 행까지 있는지 자동으로 계산하여 가변 범위를 반환
조건부 필터링 자동화
FilterItems를 통해 특정 기준 값과 일치하는 행만 필터링하여 결과를 G, H열에 자동 출력
초기화 루틴 작성
ClearRange로 기존 출력값(G2:H 영역)을 자동으로 초기화하여 반복 실행 대비
느낀 점
단순한 수식 사용에서 벗어나, 함수를 직접 구현하면서 로직을 구성하는 사고력이 크게 향상되었습니다.
Collection, For Each, Offset, Validation 같은 VBA 문법을 실전 예제로 체득할 수 있었습니다.
반복되는 엑셀 작업을 버튼 하나로 자동화할 수 있어 업무 효율성과 정확도 모두 향상된다는 것을 직접 경험했습니다.
특히 실습을 통해 만든 UniqueTextJoin 함수는 실제 업무에서 유용하게 활용될 수 있는 커스텀 함수로, 다른 프로젝트에도 재사용할 수 있을 것 같습니다.
사용자 정의 함수 만들기
MyCountIf: 조건에 맞는 셀 개수를 세는 CountIF 함수 구현
MySumIf: 조건에 맞는 셀의 값을 합산하는 SumIF 함수 구현
UniqueTextJoin: 중복을 제거한 문자열을 연결하는 TEXTJOIN 함수 확장판 구현
컬렉션(Collection) 활용
고유값만 수집하기 위해 Collection과 On Error Resume Next를 이용하여 중복 방지 로직 구현
데이터 유효성 목록 자동 적용
AddValidation 서브루틴을 통해 특정 셀에 유효성 목록을 자동 생성 (중복 제거된 리스트 기반)
동적 범위 함수 DynamicRange 구현
A열 데이터가 몇 행까지 있는지 자동으로 계산하여 가변 범위를 반환
조건부 필터링 자동화
FilterItems를 통해 특정 기준 값과 일치하는 행만 필터링하여 결과를 G, H열에 자동 출력
초기화 루틴 작성
ClearRange로 기존 출력값(G2:H 영역)을 자동으로 초기화하여 반복 실행 대비
느낀 점
단순한 수식 사용에서 벗어나, 함수를 직접 구현하면서 로직을 구성하는 사고력이 크게 향상되었습니다.
Collection, For Each, Offset, Validation 같은 VBA 문법을 실전 예제로 체득할 수 있었습니다.
반복되는 엑셀 작업을 버튼 하나로 자동화할 수 있어 업무 효율성과 정확도 모두 향상된다는 것을 직접 경험했습니다.
특히 실습을 통해 만든 UniqueTextJoin 함수는 실제 업무에서 유용하게 활용될 수 있는 커스텀 함수로, 다른 프로젝트에도 재사용할 수 있을 것 같습니다.
H
백
댓글 0