[VAB 제 36강] DropDownBox(TightlyItem) 썸네일 이미지
[VAB 제 36강] DropDownBox(TightlyItem)
콘텐츠 타입 MS 오피스 엑셀 2003(2007, 2010가능), Windows XP 이상
용량0KB
조회1,118
즐겨찾기
[VAB 제 36강] DropDownBox(TightlyItem)를 즐겨찾기 한 횟수는 0 0입니다.
이용등급 프리미엄
제품 상세정보

 




[ 기초 강좌 ]

 

제 36 강

 DropDownBox(TightlyItem)

 

 DropDownBox(TightlyItem)

그 사용법을 알아봅니다.

이럴 때 필요해요

 

DropDownBox(TightlyItem)는 매우 유용한 기능입니다.

이렇게 사용해요


먼저, 아래 드롭다운박스의 버튼을 눌러 나타 나는 목록들을 살펴 보시기 바랍니다.


 

[프로젝트 탐색기] 창에서 Sheet1(Sheet1)오브젝트를 더블클릭하여 오른쪽의 [코드창]에 기록되어 있는

Worksheet_Change 이벤트 프로시저의 내용을 살펴 보시기 바랍니다.

 

 Private Sub Worksheet_Change(ByVal Target As Range)

Worksheet_Change이벤트 프로시저에 대해서는 앞서 수 차례 설명드렸으므로 생략합니다.

 Dim rngSelect As Range, rngCell As Range

 Dim rngList As Range

 Dim cmbCombo As DropDown

늘 그랬듯이 먼저, 배역인물(변수)들을 각각 지정(선언)해 줍니다.

 Set cmbCombo = Sheets("Sheet1").DropDowns("MyCombo")

 Set rngList = Range(Cells(6, 3), Cells(65536, 3).End(xlUp))

 Set rngSelect = Intersect(Target, rngList)

각 변수들의 정의부분에 대해서는 별도의 설명이 필요없을 듯 해서 생략하겠습니다.

  On Error Resume Next

If Not rngSelect Is Nothing Then

If 조건문으로 변수 rngSelect의 값에 변경(수정, 입력, 삭제 등)이 발생할 경우, 아래의 코드를 실행하도록 조치해 둡니다.

 With cmbCombo

      .RemoveAllItems

 For Each rngCell In rngList

   If IsEmpty(rngCell) Then GoTo ScanNext

바로 이부분이 오늘의 핵심부분입니다. For Each~Next 문으로 변수 rngList의 영역을 순환하되, 만약에 빈 셀(IsEmpty(rngCell))을 만나면,아래의 ScanNext 부분의 코드를 실행(Go To ScanNext)하게 됩니다.

(위에서 사용된 GoTo문에 대해서는 언젠가 설명드린 기억이 있으므로, 역시 생략합니다.)

  .AddItem rngCell

  .ListIndex = 1

그렇지 않은 경우, 즉 빈 셀이 아닌 경우에는 rngCell의 값을 변수 cmbCombo로 정의된 드롭다운박스의목록으로 채워 넣고(AddItem), 채워 넣은 첫번째의 목록값(ListIndex = 1)이 나타 나게 합니다.

 ScanNext:

      Next rngCell

위에서 GoTo 문을 사용하여, 만약에 rngCell의 값이 비어 있을 경우, 실행하도록 조치해 두었던 코드의 내용은 Next rngCell, 즉 다음 셀로 넘어 가라는 것입니다.

rngCell이 빈 셀이면 다음 셀로 넘어가고, 빈 셀이 아니면 드롭다운박스의 목록에 채워 넣고, 또 빈 셀이면 다시 다음 셀로 넘어가고 … 를 반복하게 되면 결국, 드롭다운박스의 목록에는 변수 rngList의 영역 내에서 비어 있지 않은 셀의 데이터들로만 채워 지겠죠.

   End With

  End If

With 문과  If 문을 모두 종료하고, 프로시저 역시 종료합니다.

 End Sub

 

저작권정보
1. 콘텐츠의 저작권은 쿠키(www.coukey.co.kr)에 있으며, 사용권한은 1인 1카피입니다.
2. 다운로드 받은 콘텐츠는 본인(본인회사)만 사용할 수 있습니다.
3. 다른 사람과 공유하거나 원본 또는 수정 후 무단전제,무단배포,무단판매,무단 공유할 수 없습니다.
4. 웹상에서 배포는 상업,비상업적 목적을 불문하고, 손해배상등 가중처벌됩니다.
[VAB 제 36강] DropDownBox(TightlyItem)
이용후기

업무자동화 맞춤제작

고객님의 상황에 100% 맞춘 콘텐츠 제작 전문 서비스를 이용해 보세요.
프리미엄 무료 이벤트 중