특정 셀값 찾아서 가져오기 매크로를 만들었는데, 너무 느려요...
VBA
작성자
모아
작성일
2020-07-30 16:56
조회
261
첨부 파일의 Main 이라고 적혀 있는 모듈에 있는 매크로를 직접 작성했습니다.
VBA는 초짜고 거의 구글링해서 이것저것 기워넣어서 어떻게 무작정 완성하긴 완성했는데요.
참조하는 파일의 데이터가 4만개가 넘고 이걸 찾아서 넣어줘야 할 파일이 약 40개 됩니다.
이러다 보니 한번 매크로를 돌리면 1시간 넘게 기다려야 합니다. ㅠㅠ
찾아보니 딕셔너리? 를 활용하면 빨라진다는 사람도 있고 엑셀의 한계라서 어쩔 수 없다는 사람도 있었습니다.
어떻게 하면 좀 더 빨라지게 만들 수 있을까요? 방법이나 키워드라도 알려주시면 도움이 될 것 같습니다. ㅠㅠ
만약 빨라진다면 어느정도까지 시간을 줄일 수 있을지도 궁금합니다.
전체 2,505
번호 | 카테고리 | 제목 | 작성자 | 작성일 | 추천 | 조회 |
2496 | 함수/공식 |
New Sumproduct 함수를 사용해보려 하는데 자꾸 #N/A 가 나와요ㅠㅠ 뭐가 잘못된건지 해결부탁드립니다.
![]() ![]() |
![]() |
13:03 | 0 | 11 |
2495 | 기능/도구 |
New 엑셀 합계 관련 질문
(1)
![]() |
![]() |
10:37 | 0 | 12 |
2494 | 함수/공식 |
New 고급필터 사용시 셀값이 없는 부분 불러오는 식
![]() ![]() |
![]() |
2021.03.07 | 0 | 24 |
2493 | 함수/공식 |
New Vlookup, 피벗으로 해결되지 않는 데이터 정리 문제
(1)
![]() |
![]() |
2021.03.07 | 0 | 56 |
2492 | 함수/공식 |
New 스프레드시트 조건부서식
(1)
![]() |
![]() |
2021.03.06 | 0 | 49 |
2491 | 함수/공식 |
New 다중조건 관련 함수 부탁드려요.
(3)
답변완료
![]() |
![]() |
2021.03.06 | 0 | 54 |
2490 | 문서서식 |
New 셀 표시형식 질문
(2)
![]() |
![]() |
2021.03.06 | 1 | 46 |
2489 | 문서서식 |
New 날짜서식 영문 표기 오류
![]() ![]() |
![]() |
2021.03.05 | 0 | 38 |
2488 | 함수/공식 |
New 피킹리스트 같은걸 만들어 볼까 하는데요.
![]() |
![]() |
2021.03.05 | 0 | 43 |
2487 | VBA |
New ImageLookup를 엑셀에서 에라 발ㅅ생
(2)
![]() |
![]() |
2021.03.05 | 0 | 33 |
2486 | VBA |
네이버 로그인 관련 질문
(1)
![]() |
![]() |
2021.03.05 | 0 | 28 |
2485 | 함수/공식 |
발주 리스트 순서대로 세로 가져오기
(1)
![]() |
![]() |
2021.03.05 | 0 | 42 |
2484 | 문서서식 |
버스배차관리파일
(2)
답변완료
![]() |
![]() |
2021.03.05 | 0 | 36 |
2483 | 함수/공식 |
IF함수 동일조건에 다른값 문의
![]() ![]() |
![]() |
2021.03.05 | 1 | 34 |
2482 | 기능/도구 |
텍스트 정렬, 언어별로
(1)
![]() |
![]() |
2021.03.05 | 0 | 32 |
2481 | 함수/공식 |
VLOOKUP 세로/가로 방향 가져오기
(1)
![]() |
![]() |
2021.03.05 | 1 | 53 |
2480 | 문서서식 |
표에서 수식이 들어 있는 셀은 보호하면서, 표의 자동확장 기능은 이용할 수 없을까요?
(1)
![]() |
![]() |
2021.03.05 | 0 | 23 |
2479 | 차트/그래프 |
간트차트 관련 문의 사항
(2)
![]() |
![]() |
2021.03.05 | 0 | 20 |
2478 | 기능/도구 |
DuTool 설치시 오류 문의드립니다.
(1)
![]() |
![]() |
2021.03.04 | 0 | 29 |
2477 | VBA |
네이버부동산 크롤링
(2)
답변완료
![]() |
![]() |
2021.03.04 | 0 | 39 |
2476 | 함수/공식 |
small함수로 작은수를 찾은 뒤 그에 상응하는 옆셀 불러오기 질문합니다.
![]() ![]() |
![]() |
2021.03.04 | 0 | 33 |
2475 | 함수/공식 |
조건이 있는 중복된 값들의 개수 셀수 있을까요?
(3)
![]() |
![]() |
2021.03.04 | 1 | 49 |
2474 | VBA |
같은이름 다른파일의 데이터 복사 붙이기
![]() ![]() |
![]() |
2021.03.04 | 1 | 30 |
2473 | 파워쿼리/피벗 |
파워쿼리 편집기 날짜 및 시간 (10진수) 2
![]() ![]() |
![]() |
2021.03.04 | 0 | 35 |
2472 | 함수/공식 |
9.4512E+15 식으로 발생되는 건들에 대하여 어떻게 하면 정상적으로 숫자가 나올까요?
(5)
![]() |
![]() |
2021.03.04 | 0 | 63 |
2471 | 함수/공식 |
중복된걸 제외하고 셀수 있는 방법이 있어까요?
(2)
![]() |
![]() |
2021.03.04 | 0 | 48 |
2470 | VBA |
에러가 생기면 코드 실행을 멈추고 싶은데 어떡하면 좋을까요?
(1)
![]() |
![]() |
2021.03.04 | 0 | 29 |
2469 | 문서서식 |
엑셀 표를 PPT로 불러왔을때 선 굵기 관련 건
(3)
![]() |
![]() |
2021.03.04 | 1 | 39 |
2468 | VBA |
아웃룩 첨부파일 저장 시 파일제목
(1)
![]() |
![]() |
2021.03.04 | 0 | 25 |
2467 | VBA |
혹시 2007에서 2010과 같은 스크린샷 vba는 없나여?
(1)
![]() |
![]() |
2021.03.04 | 0 | 22 |
안녕하세요?^^
크게 2가지를 수정하시면 속도를 크게 개선하실 수 있을 듯 합니다.
Main 모듈 기준으로,
For J = 0 To UBound(P4_File_Name)
이후, FCA_XX... 값들을 매번 찾아주고 있는데요. 반드시 매번 찾아줘야 하는 값인지 모르겠습니다.
그렇지 않다면 해당 구문을 For 문 앞으로 옮겨서, 반복되는 동작을 최소화 해 주시면 좋을듯 합니다.
또한 rng.Offset(,xxx)... 으로 매 반복마다 시트위에 값을 얹어주는 방식으로 코드가 동작하는데,
그럴 경우 속도가 크게 저하됩니다.
따라서 UBound(P4_File_Name) 와 크기가 동일한 넓은 배열을 하나 생성한 뒤, 해당 배열에 값을 입력하고,
배열을 통째로 범위에 얹어주는 방식으로 명령문을 수정하시면 속도가 크게 개선되실겁니다.^^
답변이 도움이 되셨길 바랍니다.
답변 감사드립니다! 한번 시도해 보도록 하겠습니다!