vba의 array활용 반복넣기 질문

VBA
작성자
H.B
작성일
2021-11-16 10:10
조회
47
엑셀버전 : M365

운영체제 : 윈도우10

안녕하세요.

하기와 같이 sheet1의 항목을 각 행별로 5번씩 sheet2에 넣어주고 싶습니다. 첨부파일에 나름대로 vba를 짜봤습니다만,

단순히 value=value.resize(5,0)를 활용해서 하니 원하는 바는 구현했는데, 문제는 양이 많다보니 속도가 너무 느리네요.

그래서 array를 (varient)로 sheet1의 항목을 담아서 오빠두님의 arraytorng 등의 함수를 써서 뿌려줄때, 각 차원당 5번씩 뿌려주는 방식을 쓰면 좀 더 빠를거같은데, 혹시 어떻게 5번씩 array를 뿌려줄수 있을지. 도움 부탁드립니다.

전체 2

  • 2021-11-16 14:56
    채택된 답변

    Collection으로 처리해 보니 Sens RC420에서 5.6초 정도 걸립니다.

    아래 그림 및 첨부 파일 참조 바랍니다.

    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual

    Dim myColl As New Collection
    Dim rg As Range
    Dim i, k As Long
    Dim st, et As Double
    st = Timer

    Set rg = Range("A5", Range("A5").End(xlDown).End(xlToRight))

     

    For i = 0 To rg.Rows.Count - 1
    Set myCls = New myCls
    myCls.mydate = WorksheetFunction.Text(Range("A5").Offset(i, 0).Value, "YYYY-MM-DD")

    myCls.myCode = Range("A5").Offset(i, 1).Value
    myColl.Add myCls

    Next

    Sheets("Sheet3").Activate
    Range("A5").Select

    For i = 1 To myColl.Count
    Set mCls = New myCls
    myCls.mydate = myColl.Item(i).mydate
    myCls.myCode = myColl.Item(i).myCode

    For k = (i * 5) - 4 To (i * 5)
    Range("A5").Offset(k, 0).Value = myCls.mydate
    Range("A5").Offset(k, 1).Value = myCls.myCode
    Next
    Next

    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic

    et = Timer - st
    Range("A1").Select
    Selection.Value = et

    End Sub

    첨부파일 : 문의사항_답변.xlsm


  • 2021-11-16 16:22

    yukon님 항상 도움주셔서 감사합니다^^

    상기 방법도 물론 가능합니다만, 역시나 제컴퓨터에서는 시간이 상당히 걸려서요..

    가능하면 array로 배당해서 array당 5회씩 반복해서 출력하는 형식으로 진행하고 싶은데;; 방법이 없을까요


전체 4,670
번호 카테고리 제목 작성자 작성일 추천 조회
공지사항 공지사항
⭐ [더 나은 커뮤니티 문화를 위한 Q&A 글 작성 규칙] ⭐ (10)
오빠두엑셀 | 2021.10.28 | 추천 16 | 조회 743
트로피 오빠두엑셀 2021.10.28 16 743
24233 함수/공식
New 0이상의 값(유효값)이 있는 칼럼과 그 값을 불러오고 싶습니다. 첨부파일 (2) 답변완료
크놉스 | 11:41 | 추천 0 | 조회 14
크놉스 11:41 0 14
24232 차트/그래프
New 엑셀 차트에서 특정 값이 너무 높을때 차트화 하는 법 (1)
담담 | 11:36 | 추천 0 | 조회 13
담담 11:36 0 13
24230 VBA
New vba 코딩을 부탁드립니다. 첨부파일
Trimman | 11:09 | 추천 -1 | 조회 19
Trimman 11:09 -1 19
24228 함수/공식
New 등급 기준표를 참조해서 연산을 하려고 할때 (1) 답변완료
지천 | 10:12 | 추천 0 | 조회 17
지천 10:12 0 17
24221 파워쿼리/피벗
New 엑셀 종속 테이블 문의 첨부파일 (2)
유령회원 | 08:30 | 추천 0 | 조회 16
유령회원 08:30 0 16
24216 VBA
New 로그인엑셀 사용시 수식입력줄 사라짐, 모든 엑셀창 자동종료 첨부파일 (1)
엑셀이 | 00:19 | 추천 0 | 조회 16
엑셀이 00:19 0 16
24215 VBA
New set_routine 반복 매크로 (1)
하늘의 꿈 | 2021.12.01 | 추천 0 | 조회 22
하늘의 꿈 2021.12.01 0 22
24213 파워쿼리/피벗
New [파워쿼리] 계약자코드 중 특수계약 날짜가 일반계약 최소 최대 사이에 포함여부 열추가 첨부파일 (1)
seorin | 2021.12.01 | 추천 0 | 조회 18
seorin 2021.12.01 0 18
24211 VBA
New 시트를 메일머지하여 Hancom PDF 파일로 출력하는 매크로 VBA 코드 도움을 받고 싶어요. 첨부파일 (2)
김학동 | 2021.12.01 | 추천 0 | 조회 20
김학동 2021.12.01 0 20
24210 함수/공식
New 혹시 이런 것도 구할 수 있을까요? (3)
마른막대기 | 2021.12.01 | 추천 0 | 조회 28
마른막대기 2021.12.01 0 28
24207 함수/공식
New 중복값 중 제일 마지막 값 추출 (2)
rladud99 | 2021.12.01 | 추천 0 | 조회 35
rladud99 2021.12.01 0 35
24203 함수/공식
New 엑셀 값 가로/세로 변경하는 방법 문의드려요! 첨부파일 (2) 답변완료
이시현 | 2021.12.01 | 추천 0 | 조회 33
이시현 2021.12.01 0 33
24200 함수/공식
New 데이터를 일정간격으로 띄워서 입력하고 싶습니다. (5)
wlfl**** | 2021.12.01 | 추천 0 | 조회 43
wlfl**** 2021.12.01 0 43
24191 함수/공식
New 일치하는 값에 특정 데이터를 넣고싶습니다. (1)
노랑토끼 | 2021.12.01 | 추천 0 | 조회 51
노랑토끼 2021.12.01 0 51
24188 VBA
New VBA에서 이름이 긴 파일이 있는데 그 파일 이름을 바꾸고 싶습니다.(상세설명 필수) (2)
naver_618c988d51534 | 2021.12.01 | 추천 0 | 조회 28
naver_618c988d51534 2021.12.01 0 28
24184 문서서식
New 엑셀 자동채우기 관련 문의 (1) 답변완료
오문환 | 2021.12.01 | 추천 0 | 조회 40
오문환 2021.12.01 0 40
24182 함수/공식
New 줄바꿈 함수 도와주세요 첨부파일 (3)
김상준 | 2021.12.01 | 추천 1 | 조회 40
김상준 2021.12.01 1 40
24177 기능/도구
New 매크로 와 자동필터
FLOWERBALL | 2021.11.30 | 추천 0 | 조회 47
FLOWERBALL 2021.11.30 0 47
24168 VBA
New (문의) 번호가 같을경우 옆에 있는 셀의 값을 병합 (1)
ryan_cruze | 2021.11.30 | 추천 0 | 조회 42
ryan_cruze 2021.11.30 0 42
24166 기능/도구
New 질문있습니다.
최강씨맨 | 2021.11.30 | 추천 0 | 조회 34
최강씨맨 2021.11.30 0 34
24163 함수/공식
New 엑셀 특정 내용 추출하는 수식 질문드립니다. (2)
PAKSAW | 2021.11.30 | 추천 0 | 조회 49
PAKSAW 2021.11.30 0 49
24161 함수/공식
New 특정 날짜 값 찾기 (2)
ㄱ박민극 | 2021.11.30 | 추천 -1 | 조회 45
ㄱ박민극 2021.11.30 -1 45
24154 피벗테이블
New 설문조사 피벗테이블 구성이 어렵네요 첨부파일 (3)
가리 | 2021.11.30 | 추천 0 | 조회 37
가리 2021.11.30 0 37
24153 VBA
New 엑셀 검색 창 첨부파일 (2)
이혜 | 2021.11.30 | 추천 0 | 조회 36
이혜 2021.11.30 0 36
24148 피벗테이블
New 피벗테이블 형태의 데이터베이스 변환 (1)
이길호 | 2021.11.30 | 추천 0 | 조회 32
이길호 2021.11.30 0 32
파워쿼리/피벗
New Re:피벗테이블 형태의 데이터베이스 변환
Yukon | 2021.11.30 | 추천 0 | 조회 22
Yukon 2021.11.30 0 22
24140 VBA
New 특정 시트에 추출되어있는 값을 각각의 시트로 분류하려고합니다. 첨부파일 (1)
이치영 | 2021.11.30 | 추천 0 | 조회 44
이치영 2021.11.30 0 44
24135 VBA
New vlookup #N/A 에러가 나오는 경우 IF문은 어떻게.... (2)
툴잇지 with 우정기기 | 2021.11.29 | 추천 0 | 조회 61
툴잇지 with 우정기기 2021.11.29 0 61
24132 함수/공식
New 동적범위, 셀값을 시트명으로 인식하여 합계를 구하는것 첨부파일 (6) 답변완료
키큰아저씨 | 2021.11.29 | 추천 0 | 조회 60
키큰아저씨 2021.11.29 0 60
24129 VBA
New 직사각형 도형 삭제vba (2) 답변완료
H.B | 2021.11.29 | 추천 1 | 조회 35
H.B 2021.11.29 1 35
24126 VBA
New "요청한 레지스트리에 엑세스할 수 없습니다." 라는 에러때문에 진행이 안됩니다. (3)
볼펜수리공 | 2021.11.29 | 추천 0 | 조회 35
볼펜수리공 2021.11.29 0 35