![[VBA 제 50강] 배열(Array)에 대하여Ⅱ 썸네일 이미지 [VBA 제 50강] 배열(Array)에 대하여Ⅱ 썸네일 이미지](/smartediter/upload_img/thum_1538707603.png)
엑셀쿠키는 한 번의 다운로드로 평생 이용하실 수 있습니다. 프로그램과 데이터를 고객의 PC에 저장하여 사용하는 형식이라 안전하게 사용 가능합니다. 이용 기간에 따른 추가 비용이 발생하지 않아 매우 경제적입니다.
중소기업의 개별 특성, 다양한 업무를 상황별로 고려하여 제작된 프로그램을 업데이트합니다. 분야별 5,000여 개의 프로그램 중 내 업무에 맞는 프로그램을 다운받는 맞춤형 서비스입니다.
쿠키 프로그램은 MS Excel의 기본 사용법만 알면 즉시 사용할 수 있는 매운 쉬운 프로그램으로 누구나 손쉽게 배우고 사용할 수 있습니다.
중소기업의 모든 업무자동화!
쿠키의 업무자동화 프로그램은 VBA 코드로 개발된 제품으로
MS Excel 프로그램 기반으로 사용 가능하며,
자체적으로 개발한 기능은 물론,
MS Excel의 강력한 기능을 모두 사용하실 수 있습니다.

엑셀쿠키는 기업의 생산성을 높이는 업무자동화 지원 프로그램입니다.
[ 기초 강좌 ]
제 50 강
배열(Array)에 대하여Ⅱ
Excel의 생명이라고 할 수 있는 배열(Array)에 대하여Ⅱ
그 사용법을 알아봅니다.
이럴 때 필요해요
많은 데이터들을 추려서 정해진 영역에 변경될 떄 마다 특정데이터만을 찾아주는 작업이 필요할 때 사용합니다.
이렇게 사용해요
아래의 그림처럼, C9의 목록중 한개를 선택하였을 때, Date시트의 데어터들이 E9:H9영역에 나타나게
하기 위해선 어떻게 해야할까요?
(참고로, C9셀의 목록은 Data시트의 B6:B19영역을 이름정의한 목록입니다.)
(Data시트의 데어터입니다.)
간단히 설명드리자면,
오래전에 알려 드렸던 Worksheet_Change 이벤트 프로시저, 즉 워크시트에서 특정 셀(또는 범위)의
값이 변경되었을 경우, 이를 감지하여 즉각 해당 코드를 자동으로 실행하는 프로시저를 사용하여
C9 셀의 값이 변경될 때 마다 특정 데이터 영역(Data시트)에서 변경된 값에 해당하는 특정 데이터만을
찾아서, 지정된 영역(E9:H9)에 뿌려 주는 비교적 단순한 작업입니다.
이제 수식에 대해 설명 드리겠습니다.
Private Sub Worksheet_Change(ByVal Target As Range) |
'이전 시간에도 알려 드린 바와 같이, 먼저 다른 변수들과 함께 arrValue라는 가변형(Variant)변수를
'선언해 줍니다.
If Target.Address <> "$C$9" Or IsEmpty(Target) Then Exit Sub |
'Worksheet_Change이벤트 핸들러 프로시저에서 변경되는 셀의 주소(Target.Address)가 $C$9 가
'아니거나, 혹은 비어 있을 경우(IsEmpty(Target))에는 프로시저를 중단(Exit Sub)하도록 사전조치해 둡니다.
'즉, C9 셀에 한하여 공백(IsEmpty)이 아닌 값으로 변경되었을 경우에만 이벤트가 발생하게 되고,
'그 다음의 프로시저를 실행하게 됩니다.
strName = Target.Value |
'위에서 등장한 각 등장 인물(변수)들에 대한 역할(할당 값)을 각각 정의해 주되, arrValue 라는 변수는..
With rngCell |
'With~End With문을 사용하여 변수 rngCell, 즉 위에서 정의된 할당 값과 같이 변수 rngList의 영역에서
'변수 strName(즉, C9 셀의 값)과 일치하는 값을 가진 셀로부터 오른 쪽으로 2칸 및 3칸, 그리고 5칸 및
'8칸의 위치에 각각 떨어 져 있는 값들을 배열(Array)로 한꺼번에 묶어 준 값임을 정의해 줍니다.
Range("E9:H9") = arrValue |
'위에서 정의한 배열변수 즉, 변수arrValue의 값을 E9:H9의 영역에 한꺼번에 뿌려 준 다음,
'프로시저를 종료(End Sub)합니다.
End Sub |
2. 다운로드 받은 콘텐츠는 본인(본인회사)만 사용할 수 있습니다.
3. 다른 사람과 공유하거나 원본 또는 수정 후 무단전제,무단배포,무단판매,무단 공유할 수 없습니다.
4. 웹상에서 배포는 상업,비상업적 목적을 불문하고, 손해배상등 가중처벌됩니다.
![[VBA 제 50강] 배열(Array)에 대하여Ⅱ [VBA 제 50강] 배열(Array)에 대하여Ⅱ](/common/images/cmm/view_middel.jpg)