일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 몸캠피씽
- 영상통화 유출
- 카톡 영상 사기
- 영통사기
- 영상 사기
- 라바웨이브
- 라인 영상통화 협박
- 카카오톡 협박
- 사이버범죄구제업체
- 영상유출
- 메신저톡 사기
- 팀카시아
- 사이버 범죄 구제 업체
- 사이버범죄구제
- 몸캠피싱
- 엑셀#직장인칼퇴#칼퇴#직장인엑셀#VBA 배열#배열변수
- 영상통화 사기
- 동영상유포협박
- 라인 영상통화 사기
- 카톡 영상 협박
- 영상통화 협박
- 카카오톡 사기
- 영통 협박
- 랜덤채팅 사기
- 영상사기
- 영상통화사기
- 영통협박
- 라인 동영상 유포
- 카톡 영상 유출
- 동영상 사기
- Today
- Total
Lost Information!
엑셀 VBA 기본 - VBA 배열변수에 대해 - 3편 본문
모두가 칼퇴하는 그날까지~
지난 글에서는
VBA배열 변수의
기본개념에 대해
알려드렸습니다.
만일 저번 내용을 모르시거나
기억이 나질 않으신다면
밑에 글을 참고해주세요.
엑셀 VBA 기본 - VBA 배열변수에 대해 - 2편
모두가 칼퇴하는 그날까지~ 지난 글에서는 VBA배열 변수에 대해 알려드렸습니다. 만일 저번 내용을 모르시거나 기억이 나질 않으신다면 밑에 글을 참고해주세요. red-s.tistory.com/2519 엑셀 VBA 기
red-s.tistory.com
이번 글에서는
저번 글까지 알려드렸던
VBA 배열 변수를
활용하는 방법을
알려드리겠습니다.
그럼 엑셀을 실행해주세요.
가장 먼저
Option Base 1을
적어주고 나서
VBA코드를
작성해주시면 됩니다.
Option Base 1은
상단에 한 번만
적어주시면 됩니다.
그리고 위와 같이 작성해주세요
바로 설명해드리면
Sub Array_Type 1()
Dim V(3)
Dim i As Long
ActiveSheet.UsedRange.Clear
배열 방이 3개인 변수와
숫자 타입의 i 변수를
설정해주세요
그리고 사용 중인 모든 범위에
있는 값을 지워주세요
(초기화를 하고 코드 실행)
V(1) = "1"
V(2) = "2"
V(3) = "3"
각 방의 마다
1,2,3의 숫자를
넣어주세요
Range("A1") = V(1)
Range("A2") = V(2)
Range("A3") = V(3)
End Sub
그리고 A1에는 V1의 값이
A2에는 V2의 값이
A3에는 V3의 값이
들어가게 설정해주세요.
라고 적고 실행하게 되면
이렇게 숫자가 빠르게
들어가게 됩니다.
하지만 이렇게 직접 하나하나
입력하는 것보다 저번 글에서
보여드렸던 FOR문을 활용하면
더 빠르게 숫자를 넣을 수 있죠.
또 이런 방식으로도
활용할 수 있죠.
Sub Array_Type 3()
Dim V(10)
Dim i As Long
배열 방의 개수를 10개로
설정하고 숫자 타입을
변수로 받을 i를 설정하고
ActiveSheet.UsedRange.Clear
초기화시켜준 후에
For i = 1 To 10
V(i) = i
Next
1~10까지 돌아가면서
V값에 들어가게 설정하고
Range("A1"). Resize(10, 1) = Application.Transpose(V)
End Sub
A1부터 10행 1열로
차례대로 세로로 넣어줘
라고 설정하고 실행하면
이렇게 들어가게 됩니다.
Sub Array_Type4()
Dim V(10)
Dim i As Long
ActiveSheet.UsedRange.Clear
For i = 1 To 10
V(i) = i
Next
Range("A1"). Resize(10, 10) = Application.Transpose(V)
End Sub
당연히 10행 10열로 실행하게 되면
이렇게 많은 숫자도
정말 빠른 속도로 입력할 수
있습니다.
Sub Array_Test()
Dim V(49997)
Dim i As Long
Dim T
T = Now
For i = 1 To 49997
V(i) = Range("G" & i + 2) * Range("H" & i + 2)
Next
Range("I3") Resize(49997, 1) = ApplicationTranspose(V)
T = Now - T
MsgBox Format(T, "HH:MM:SS")
End Sub
또한 숫자를 입력하는 것 외에
G값과 H값의 곱셈 값을
5 만행까지 몇 초에 가능한지
확인해본다면
단 1초도 밖에 걸리지 않는다는 것을
확인해볼 수도 있습니다.
그렇다면 다른 복잡한 데이터를
다루는 작업을 할 때 배열을
활용하신다면 다른 코드보다
조금 더 빠르게 작업을 하실 수
있을 거라 생각합니다.
그럼 여기까지 궁금하신 점은
댓글에 남겨주시고
공감과 구독도 부탁드립니다.