Excel에서 사용자 정의 폼을 변경 하려면 Visual Basic for Applications (VBA)를 사용 하는 방법

Office 2003에 대한 지원이 종료되었습니다.

Microsoft는 2014년 4월 8일 Office 2003에 대한 지원을 종료했습니다. 이러한 변경에 따라 해당 소프트웨어 업데이트 및 보안 옵션이 영향을 받습니다. 사용자에게 미치는 영향 및 계속 보호를 받는 방법에 대해 알아보십시오.

이 문서는 Microsoft 기계 번역 소프트웨어를 이용하여 번역되었으며 Microsoft Community에 의한 Community Translation Framework(CTF) 기술 혹은 사람이 번역한 내용에 의하여 사후 편집될 수 있습니다. Microsoft는 Knowledge Base에 있는 모든 문서에 다양한 언어로 접근할 수 있도록 하기 위하여 기계 번역, 사람에 의한 번역 및 커뮤니티가 편집한 내용을 모두 제공합니다. 번역된 문서는 어휘, 구문 및/혹은 문법에 오류가 있을 수 있습니다. Microsoft는 번역 오류로 인한 부정확성, 오류 및/또는 손해와 이를 고객이 사용하는 데에 대하여 책임을 지지 않습니다.

이 문서의 영문 버전 보기:829070
요약
Microsoft Excel에서 프로그래밍 방식으로 사용자 정의 폼을 변경 하는 방법을 설명 합니다. 예제 및 Microsoft Visual Basic for Applications (VBA) 매크로 사용자 정의 폼의 기능을 활용 하는 방법과 사용자 정의 폼에 사용할 수 있는 ActiveX ™ 컨트롤을 사용 하는 방법을 보여 주는 포함 합니다.

사용자 정의 폼의 기본 원칙에 대 한 소개는 사용자 정의 폼을 표시 하는 방법, 일시적으로 사용자 정의 폼을 숨기는 방법 및 사용자 정의 폼 해제 하는 방법을 설명 합니다. 사용자 정의 폼에 연결 하는 가장 일반적인 이벤트를 사용 하는 방법을 표시 됩니다-에서 초기화 이벤트는 클릭 이벤트 및 종료 이벤트입니다. 다음 예제에서는 하나 이상의 사용자 정의 폼에 각 다음 ActiveX ™ 컨트롤을 사용 하는 방법을 보여 줍니다.
  • 레이블 컨트롤
  • 텍스트 상자 컨트롤
  • 명령 단추 컨트롤
  • 목록 상자 컨트롤
  • 콤보 상자 컨트롤
  • 프레임 컨트롤
  • OptionButton 컨트롤
  • 확인란 컨트롤
  • ToggleButton 컨트롤
  • TabStrip 컨트롤
  • MultiPage 컨트롤
  • 스크롤 막대 컨트롤
  • SpinButton 컨트롤
  • RefEdit 컨트롤
  • 이미지 컨트롤
소개
Excel에서 사용자 정의 폼에 변경 하려면 VBA를 사용 하는 방법을 설명 합니다.
추가 정보
Microsoft는 모든 보증, 그림에 대 한 묵시적인 보증. 이 포함 되지만 상품성 또는 특정 목적에의 적합성의 묵시적된 보증에 국한 되지는 않습니다. 이 문서는 작성 하 고 프로시저를 디버깅할 데 사용 되는 도구 및 여기서 설명 하는 프로그래밍 언어에 익숙한 가정 합니다. Microsoft 지원 엔지니어는 특정 프로시저의 기능을 설명할 수 있지만 추가 기능을 제공 하거나 특정 요구 사항에 맞도록 프로시저를 구성 하는 이러한 예제를 수정 하지 않습니다.

사용자 정의 폼 기본 사항

사용자 정의 폼을 표시 하는 방법

프로그래밍 방식으로 사용자 정의 폼을 표시 하는 데 사용 되는 구문은 다음과 같습니다.
UserFormName. 쇼
UserForm1 이라는 사용자 정의 폼을 표시 하려면 다음 코드를 사용 합니다.
UserForm1.Show
사용자 정의 폼을 실제로 표시 하지 않고 메모리에 로드할 수 있습니다. 복잡 한 사용자 정의 폼 여러 걸릴 수 있습니다 초를 표시 합니다. 사용자 정의 폼 메모리에 미리 로드 합니다 때문에이 오버 헤드를 초래 하는 시기를 결정할 수 있습니다. UserForm1 표시 하지 않고 메모리에 로드 하려면 다음 코드를 사용:
Load UserForm1
사용자 정의 폼을 표시 하려면 표시 되기 이전에Show 메서드를 사용 해야 합니다.

사용자 정의 폼을 일시적으로 숨기기 방법

사용자 정의 폼을 일시적으로 숨길 하려면숨기기 메서드를 사용 합니다. 응용 프로그램에 사용자 정의 폼 간에 이동 하는 경우 사용자 정의 폼을 숨기는 것이 좋습니다. 사용자 정의 폼을 숨기려면 다음 코드를 사용 합니다.
UserForm1.Hide
자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료에서 해당 문서를 확인하십시오.
213747 XL2000: 명령 단추를 사용 하 여 사용자 지정 사용자 정의 폼 간에 이동 하는 방법

사용자 정의 폼을 메모리에서 제거 하는 방법

사용자 정의 폼을 메모리에서 제거 하려면언로드 문을 사용 합니다. UserForm1 이라는 사용자 정의 폼을 언로드한 다음 코드를 사용 합니다.
Unload UserForm1
연결 된 사용자 정의 폼 이나 연결 된 컨트롤에 사용자 정의 폼 이벤트 프로시저에서 사용자 정의 폼을 언로드할 경우 (예를 들어,CommandButton 컨트롤을 클릭 하면) 대신 사용할 수 있습니다 "Me" 키워드는 사용자 정의 폼의 이름입니다. 다음 코드를 사용 "Me" 키워드를 사용 하는 사용자 정의 폼을 언로드할 수 있습니다.
Unload Me

사용자 정의 폼 이벤트를 사용 하는 방법

사용자 정의 폼을 VBA 프로시저를 연결할 수 있는 미리 정의 된 많은 이벤트를 지원 합니다. 이벤트가 발생 하면 이벤트에 연결 하는 절차를 실행 합니다. 사용자가 수행 하는 단일 작업을 여러 개의 이벤트를 시작할 수 있습니다. 중 가장 자주 사용 하는 사용자 정의 폼 이벤트는 Initialize 이벤트, Click 이벤트 Terminate 이벤트.

참고: "뒤 에서" 사용자 정의 폼을 모듈에 이벤트 프로시저를 포함 하는 Visual Basic 모듈을 참조할 수 있습니다. 이벤트 프로시저를 포함 하는 모듈 Modules 컬렉션 Microsoft 프로젝트 탐색기 Visual Basic 편집기의 창에 표시 되지 않습니다. UserForm 코드 모듈을 볼 수 있는 사용자 정의 폼의 본문을 두 번 클릭 합니다.

사용자 정의 폼 이벤트를 트래핑 하는 방법

사용자 정의 폼 이벤트를 트랩 하려면 다음과이 같이 하십시오.
  1. Excel에서 새 통합 문서를 만듭니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. 사용자 정의 폼에 대 한 코드 창을 표시 하려면 사용자 정의 폼 을 두 번 클릭 합니다.
  5. 모듈에서 다음 코드를 입력 합니다.
    Private Sub UserForm_Click()    Me.Height = Int(Rnd * 500)    Me.Width = Int(Rnd * 750)End SubPrivate Sub UserForm_Initialize()    Me.Caption = "Events Events Events!"    Me.BackColor = RGB(10, 25, 100)End SubPrivate Sub UserForm_Resize()    msg = "Width: " & Me.Width & Chr(10) & "Height: " & Me.Height    MsgBox prompt:=msg, Title:="Resize Event"End SubPrivate Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)    msg = "Now Unloading " & Me.Caption    MsgBox prompt:=msg, Title:="QueryClose Event"End SubPrivate Sub UserForm_Terminate()    msg = "Now Unloading " & Me.Caption    MsgBox prompt:=msg, Title:="Terminate Event"End Sub
  6. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
사용자 정의 폼 처음 로드 될 때 매크로 사용자 정의 폼의 Caption 속성을 "이벤트 이벤트 이벤트!" 진한 파란색에 BackColor 속성을 변경 하려면 Initialize 이벤트를 사용 합니다.

사용자 정의 폼을 클릭 하면 Click 이벤트를 시작 합니다. Click 이벤트는 폼 크기가 조정 됩니다. Resize 이벤트에 대 한 프로시저를 만든 때문에 사용자 정의 폼을 클릭 한 후 두 개의 메시지 상자가 나타납니다. Resize 이벤트는 Click 이벤트 코드가 변경 되므로 Width 속성 및 Height 속성을 사용자 정의 폼 모두 두 번 발생 합니다.

닫으면 사용자 정의 폼 QueryClose 이벤트를 시작 합니다. QueryClose 이벤트 Initialize 이벤트에 대 한 코드에서 사용자 정의 폼을 준 캡션이 있는 메시지 상자를 표시 합니다. 사용자가 사용자 정의 폼을 닫으면 일련의 작업을 수행 하려는 경우 QueryClose 이벤트를 사용할 수 있습니다.

Terminate 이벤트는 사용자 정의 폼의 캡션에 UserForm1 되었음을 알리는 메시지 상자를 생성 합니다. Terminate 이벤트는 UserForm 메모리에서 제거 되 고 사용자 정의 폼의 캡션을 원래 상태로 반환 하는 후에 발생 합니다.

사용자 정의 폼 닫기 단추를 사용 하 여 닫고 하는 것을 방지 하는 방법

사용자 정의 폼을 실행할 때 닫기 단추는 사용자 정의 폼 창의 오른쪽 위 모서리에 추가 됩니다. 사용자 정의 폼 닫기 단추를 사용 하 여 닫고 하는 것을 방지 하려면 QueryClose 이벤트를 트래핑 해야 합니다.

QueryClose 이벤트 UserForm 메모리에서 언로드되기 직전에 발생 합니다. QueryClose 이벤트의 CloseMode 인수를 사용 하 여 사용자 정의 폼 닫혀 어떻게 결정. CloseMode 인수의 값이 vbFormControlMenu닫기 단추를 클릭 했음을 나타냅니다. 사용자 정의 폼의 활성을 유지 하기 위해 QueryClose 이벤트의 Cancel 인수를 True로 설정 합니다. 사용자 정의 폼 닫기 단추를 사용 하 여 닫고 하는 것을 방지 하려면 QueryClose 이벤트를 사용 하려면 다음과이 같이 하십시오.
  1. Excel에서 새 통합 문서를 만듭니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. 사용자 정의 폼에 CommandButton 컨트롤을 추가 합니다.
  5. 사용자 정의 폼에 대 한 코드 창을 표시 하려면 사용자 정의 폼 을 두 번 클릭 합니다.
  6. 코드 창에 다음 코드를 입력 합니다.
    Private Sub CommandButton1_Click()    Unload MeEnd SubPrivate Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)    IF CloseMode = vbFormControlMenu Then        Cancel = True        Me.Caption = "Click the CommandButton to close Me!"    End IfEnd Sub
  7. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
닫기 단추를 클릭할 때 사용자 정의 폼 닫히지 않습니다. 사용자 정의 폼 닫으려면 CommandButton 컨트롤을 눌러야 합니다.

자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조 하는 다음 문서 번호를 클릭 합니다.
207714 사용자 정의 폼 컬렉션을 사용 하 여 XL2000: 런타임 오류
211527 XL2000: 워크시트에 사용자 정의 폼 컨트롤을 끌 수 없습니다.
211868 XL2000: 오류 매크로 사용자 정의 폼에 컨트롤을 삽입 하는 실행
213582 매크로 사용 하 여 사용자 정의 폼에 컨트롤을 추가 하는 경우 XL2000: 문제
213583 XL2000: 다른 프로젝트에서 사용자 정의 폼을 표시할 수 없습니다.
213736 XL2000: 키 확인 하는 방법을 누른 마우스 단추와
213744 XL2000: 사용자 정의 폼을 일시적으로 숨기기 방법
213747 XL2000: 명령 단추를 사용 하 여 사용자 지정 사용자 정의 폼 간에 이동 하는 방법
213749 XL2000: 데이터 입력 사용자 정의 폼을 사용 하는 방법
213768 XL2000: 동적으로 사용자 정의 폼 크기를 조정 하는 방법
213774 XL2000: 사용자 정의 폼을 사용 하 여 시작 화면을 만드는 방법

VBA 코드

사용자 정의 폼에 사용할 수 있는 15 가지 컨트롤이 포함 됩니다. 이 섹션에 프로그래밍 방식으로 이러한 컨트롤을 사용 하는 다양 한 예제가 있습니다.

참고: VBA 코드를이 문서에 포함 된 모든 속성과 이벤트는 컨트롤에 적용 되는 예제를 포함 하지 않습니다. 해야 할 경우 컨트롤에 사용할 수 있는 속성 목록을 보려면 속성 창을 사용할 수 있습니다. 보기 메뉴에서 속성의 목록을 보려면, 속성 창을 클릭 합니다.

컨트롤을 편집 하려면 디자인 모드를 사용 하는 방법

Visual Basic 편집기를 사용 하 여 대화 상자를 디자인할 때 디자인 모드를 사용 합니다. 디자인 모드에서 컨트롤을 편집할 수 및 속성 창에서 사용자 정의 폼에 있는 컨트롤의 속성을 변경할 수 있습니다. 보기 메뉴에서 속성 창을 표시 하려면 속성 창을 클릭 합니다.

참고: 디자인 모드에서 컨트롤 이벤트에 응답 하지 않습니다. 사용자에 표시 하는 방식을 표시 하는 대화 상자를 실행할 때 프로그램 실행된 모드입니다. 사용자 정의 폼을 메모리에서 언로드할 때 실행된 모드에 있는 컨트롤의 속성에 변경 내용이 유지 되지 않습니다.

참고: 실행된 모드에서 이벤트에 응답지 않습니다.

사용자 정의 폼에 있는 컨트롤을 참조 하는 방법

참조 컨트롤에 프로그래밍 방식으로 코드를 실행 하면 Visual Basic 모듈 시트의 종류에 따라 달라 집니다. 일반 모듈에서 코드를 실행 하는 경우 구문은 다음과 같습니다.
UserFormName.Controlname.Property =
예를 들어, Bob의 값으로 UserForm1 이라는 사용자 정의 폼에 있는 TextBox1 이라는 TextBox 컨트롤의Text 속성을 설정 하려면 다음 코드를 사용:
UserForm1.TextBox1.Text = "Bob"
사용자 정의 폼 또는 컨트롤의 이벤트로 시작 되는 프로시저에 있는 코드를 사용자 정의 폼의 이름을 참조 필요가 없습니다. 대신 다음 코드를 사용 합니다.
TextBox1.Text = "Bob"
개체에 코드를 연결 하면 코드를 해당 개체의 이벤트 중 하나로 연결 되어 있습니다. 이 문서의 예제에서는 여러 단추 개체의Click 이벤트에 코드를 연결합니다.

레이블 컨트롤

Label 컨트롤은 사용자 정의 폼에 있는 다른 컨트롤을 설명 하기 위해 주로 사용 됩니다. Label 컨트롤을 사용자 정의 폼을 실행 하는 동안 사용자가 편집할 수 없습니다. 설정 하거나 Label 컨트롤의 텍스트를 반환 하려면 Caption 속성을 사용 합니다. 기타 자주 사용 하는 속성 레이블 컨트롤 서식에 대 한 글꼴 속성과 ForeColor 속성을 포함 합니다.

WITH 문을 사용 하 여 레이블 컨트롤에 서식을 지정 하는 방법

Label 컨트롤의 속성을 변경 하려면 WITH 문을 사용 하려면 다음이 단계를 수행 합니다.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. 사용자 정의 폼에 Label 컨트롤을 추가 합니다.
  5. 사용자 정의 폼에 CommandButton 컨트롤을 추가 합니다.
  6. 사용자 정의 폼에 대 한 코드 창에 있는 CommandButton 컨트롤 toopen를 두 번 누릅니다.
  7. 코드 창에 CommandButton1 Click 이벤트에 다음 코드를 입력 합니다.
    Private Sub CommandButton1_Click()    With Label1        ' Set the text of the label.        .Caption = "This is Label Example 1"        ' Automatically size the label control.        .AutoSize = True        .WordWrap = False        ' Set the font used by the Label control.        .Font.Name = "Times New Roman"        .Font.Size = 14        .Font.Bold = True        ' Set the font color to blue.        .ForeColor = RGB(0, 0, 255)    End WithEnd Sub
  8. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
  9. 명령 단추를 클릭 합니다.
텍스트 "은 레이블 예제 1" 굵은 바탕체 글꼴 크기가 14 사용 하 여 Label 컨트롤에 나타납니다.

TextBox 컨트롤

TextBox 컨트롤은 사용자 입력을에서 수집 하기 위해 자주 사용 됩니다. Text 속성을 TextBox 컨트롤에서 항목을 포함 합니다.

TextBox 컨트롤을 사용 하 여 암호의 유효성을 검사 하는 방법

하려면 TextBox 컨트롤의 text 로 설정 하면 "마스크 편집" 제어 됩니다. TextBox 컨트롤에 입력 한 모든 문자를 지정 하는 문자를 시각적으로 바뀝니다. TextBox 컨트롤의 유효성을 검사할 암호를 사용 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. 사용자 정의 폼에 TextBox 컨트롤을 추가 합니다.
  5. 보기 메뉴에서 속성 창을 표시 하려면속성 클릭 합니다.
  6. TextBox 컨트롤 하려면 입력 *.

    참고: 별표 값을 변경 됩니다.
  7. 사용자 정의 폼에 CommandButton 컨트롤을 추가 합니다.
  8. 사용자 정의 폼에 대 한 코드 창에 있는 CommandButton 컨트롤 toopen를 두 번 누릅니다.
  9. 코드 창에 CommandButton1 Click 이벤트에 다음 코드를 입력 합니다.
    Private Sub CommandButton1_Click()    If TextBox1.Text <> "userform" Then        MsgBox "Password is Incorrect. Please reenter."        TextBox1.Text = ""        TextBox1.SetFocus    Else        MsgBox "Welcome!"        Unload Me    End IfEnd Sub
  10. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
  11. 암호를 입력 합니다. 사용자 정의 폼TextBox 컨트롤입니다.
  12. CommandButton컨트롤을 클릭 합니다.
이 예제에서는 암호 "사용자 정의 폼"입니다. 잘못 된 암호를 입력 하면 암호가 올바르지 않습니다는 TextBox 컨트롤의 선택을 취소 한 암호를 다시 입력 수 내용의 메시지 상자가 나타납니다. 올바른 암호를 입력할 때 환영 메시지를 수신 하 고 사용자 정의 폼을 닫습니다.

자세한 내용은 다음 문서 번호를 클릭하여 Microsoft 기술 자료에서 해당 문서를 확인하십시오.
213555 XL2000: 사용자 정의 폼 텍스트 상자에 대 한 데이터 유효성 검사 속성이 없는

CommandButton 컨트롤

VBA 프로시저를 시작 하려면 CommandButton 컨트롤을 사용할 수 있습니다. 일반적으로 VBA 프로시저에서 CommandButton 컨트롤의 Click 이벤트가 연결 되어 있습니다. Click 이벤트가 발생 하는 경우에 프로시저를 실행 하는 명령 단추 컨트롤을 사용 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. 사용자 정의 폼에 CommandButton 컨트롤을 추가 합니다.
  5. 사용자 정의 폼에 대 한 코드 창에 있는 CommandButton 컨트롤 todisplay를 두 번 누릅니다.
  6. 코드 창에 다음 코드를 입력 합니다.
    Private Sub CommandButton1_Click()    red = Int(Rnd * 255)    green = Int(Rnd * 255)    blue = Int(Rnd * 255)    CommandButton1.BackColor = RGB(red, green, blue)End Sub 
  7. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
CommandButton1 컨트롤의 배경색을 클릭할 때마다를 변경 됩니다.

CommandButton 컨트롤에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조 하는 다음 문서 번호를 클릭 합니다.
213572 XL2000: 취소 단추를 클릭 하 여 사용자 정의 폼 해제 하지 않을 수 있습니다.
213743 XL2000: 사용자 정의 폼을 기본 명령 단추를 설정 하는 방법

ListBox 컨트롤

ListBox 컨트롤의 목적은 사용자에서 선택할 수 있는 항목의 목록을 표시 합니다. Excel 워크시트에서 목록 상자 컨트롤에 대 한 항목 목록을 저장할 수 있습니다. 워크시트에서 셀 범위를 사용 하 여 ListBox 컨트롤을 채우려면 RowSource 속성을 사용 합니다. MultiSelect 속성을 사용 하면 다중 선택을 허용 하도록 목록 상자 컨트롤을 설정할 수 있습니다.

ListBox 컨트롤에서 현재 선택 된 항목을 얻을 하는 방법

현재 선택 된 항목을 반환 하려면 ListBox 컨트롤의 Value 속성을 사용 합니다. 단일 선택 ListBox 컨트롤에서에서 현재 선택 된 항목을 반환 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. Sheet1의 셀에 a1: a5, ListBox 컨트롤을 채우는 데 사용할 원하는 값을 입력 합니다.
  3. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  4. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  5. 사용자 정의 폼에 ListBox 컨트롤을 추가 합니다.
  6. ListBox 컨트롤 todisplay ListBox 컨트롤의 코드 창을 두 번 클릭 합니다.
  7. 코드 창에서 ListBox1 Click 이벤트에 다음 코드를 입력 합니다.
    Private Sub ListBox1_Click()    MsgBox ListBox1.ValueEnd Sub 
  8. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
목록에서 항목을 클릭 하면 현재 선택 된 항목을 사용 하 여 메시지 상자가 나타납니다.

다중 선택 ListBox 컨트롤에서 선택한 항목을 구하는 방법

다중 선택 ListBox 컨트롤에서에서 선택한 항목을 확인 하려면 목록에서 모든 항목을 반복 하 고 Selected 속성을 쿼리하여 해야 합니다. 다중 선택 ListBox 컨트롤에서에서 현재 선택 된 항목을 반환 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. Sheet1의 셀에 a1: a5, ListBox 컨트롤을 채우는 데 사용할 원하는 값을 입력 합니다.
  3. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  4. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  5. 사용자 정의 폼에 ListBox 컨트롤을 추가 합니다.
  6. 보기 메뉴에서 속성 창에속성 클릭 합니다.
  7. 다음 ListBox 컨트롤 속성에 지정 된 값을 입력 합니다.
       Property	   Value   -----------     -----------------------   MultiSelect	   1 - frmMultiSelectMulti   RowSource	   Sheet1!A1:A8
  8. 사용자 정의 폼에 CommandButton 컨트롤을 추가 합니다.
  9. 사용자 정의 폼에 대 한 코드 창에 있는 CommandButton 컨트롤 todisplay를 두 번 누릅니다.
  10. 코드 창에 CommandButton1 Click 이벤트에 다음 코드를 입력 합니다.
    Sub CommandButton1_Click ()       ' Loop through the items in the ListBox.       For x = 0 to ListBox1.ListCount - 1          ' If the item is selected...          If ListBox1.Selected(x) = True Then             ' display the Selected item.             MsgBox ListBox1.List(x)          End If       Next x    End Sub 
  11. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
  12. 목록에서 하나 이상의 항목을 선택 합니다.
  13. CommandButton1를 클릭 합니다.
CommandButton1를 클릭 하면 ListBox 컨트롤에서 선택한 모든 항목 메시지 상자에 나타납니다. 메시지 상자에 표시 된 항목을 모두 선택한 후 사용자 정의 폼 자동으로 닫힙니다.

워크시트의 셀을 사용 하 여 ListBox 컨트롤을 채울 컨트롤의 RowSource 속성을 사용 하는 방법

컨트롤의 RowSource 속성을 워크시트에서 셀 범위를 ListBox 컨트롤을 채우는 데 사용 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. Sheet1의 셀에 a1: a5, ListBox 컨트롤을 채우는 데 사용할 원하는 값을 입력 합니다.
  3. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  4. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  5. 사용자 정의 폼에 ListBox 컨트롤을 추가 합니다.
  6. 사용자 정의 폼에 CommandButton 컨트롤을 추가 합니다.
  7. 사용자 정의 폼에 대 한 코드 창에 있는 CommandButton 컨트롤 todisplay를 두 번 누릅니다.
  8. 코드 창에 CommandButton1 Click 이벤트에 다음 코드를 입력 합니다.
    Private Sub CommandButton1_Click()    ListBox1.RowSource = "=Sheet1!A1:A5"End Sub 
  9. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.

    참고:ListBox1 값이 들어 있지 않습니다.
  10. CommandButton1를 클릭 합니다.
ListBox1 Sheet1의 a1: a5 셀에에서 있는 값으로 채워집니다.

배열의 값을 사용 하 여 ListBox 컨트롤을 채우는 방법

이 예제에서는 배열 변수를 사용 하 여 ListBox 컨트롤을 채우는 방법을 보여 줍니다. 값을 할당 해야 해당 배열에서 ListBox 컨트롤 한 항목을 한 번에. 일반적으로이 과정에 필요 한 와 같은 반복 구조를 사용 하 여에 대 한... 다음 루프. 배열 변수를 사용 하 여 ListBox 컨트롤을 채우려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. 사용자 정의 폼에 ListBox 컨트롤을 추가 합니다.
  5. 삽입 메뉴에서모듈 모듈 시트 삽입을 클릭 합니다.
  6. 코드 창에 다음 코드를 입력 합니다.
    Sub PopulateListBox()    Dim MyArray As Variant    Dim Ctr As Integer    MyArray = Array("Apples", "Oranges", "Peaches", "Bananas", "Pineapples")        For Ctr = LBound(MyArray) To UBound(MyArray)        UserForm1.ListBox1.AddItem MyArray(Ctr)    Next        UserForm1.ShowEnd Sub 
  7. 도구 메뉴에서매크로클릭 하 고 PopulateListBox실행을 클릭 합니다.
PopulateListBox 프로시저 간단한 배열 빌드하고 추가 항목 배열에서 ListBox 컨트롤로 AddItem 메서드를 사용 하 여. 그런 다음 사용자 정의 폼이 나타납니다.

워크시트에 가로 셀 범위를 ListBox 컨트롤을 채우는 데 사용 하는 방법

가로 셀 범위를 ListBox 컨트롤의 RowSource 속성을 설정 하면 ListBox 컨트롤의 첫 번째 값만 나타납니다.

AddItem 메서드를 사용 하 여 ListBox 컨트롤에서 가로 셀 범위를 채우려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. Sheet1의 셀 범위 a1:를 ListBox 컨트롤을 채우는 데 사용할 원하는 값을 입력 합니다.
  3. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  4. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  5. 사용자 정의 폼에 ListBox 컨트롤을 추가 합니다.
  6. 삽입 메뉴에서모듈 모듈 시트 삽입을 클릭 합니다.
  7. 코드 창에 다음 코드를 입력 합니다.
    Sub PopulateListWithHorizontalRange()    For Each x In Sheet1.Range("A1:E1")        UserForm1.ListBox1.AddItem x.Value    Next        UserForm1.ShowEnd Sub
  8. 도구 메뉴에서매크로클릭 하 고PopulateListWithHorizontalRange실행을 클릭 합니다.
매크로 프로시저 a1: e5 셀에서 Sheet1 값을 한 번에 하나 ListBox1 추가 반복 합니다.

참고:ListBox1 Sheet1의 a1: e5 셀에 바인딩되어 있지 않습니다.

데이터의 여러 열에 바인딩된 ListBox 컨트롤에서 여러 개의 값을 반환 하는 방법

여러 개의 데이터 열을 표시 하려면 ListBox 컨트롤에 서식을 지정할 수 있습니다. ListBox 컨트롤 목록의 각 줄에 둘 이상의 항목을 표시 하는 것을 의미 합니다. 목록에서 선택된 된 항목의 여러 값을 반환 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. OnSheet1 지정된 된 셀에 다음 데이터를 입력 합니다.

    A1: 1 년B1: 영역C1: 판매
    A2: 1996 B2: 북미C2: 140
    A3: 1996B3: 남쪽C3: 210
    A4: 1997B4: 북미C4: 190
    A5: 1997B5: 남쪽C5: 195
  3. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  4. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  5. 사용자 정의 폼에 Label 컨트롤을 추가 합니다.
  6. 사용자 정의 폼에 ListBox 컨트롤을 추가 합니다.
  7. 목록 상자마우스 오른쪽 단추로 클릭 한 다음속성을 클릭 합니다.
  8. 입력 하거나 다음 표에 나열 된 thefollowing ListBox 컨트롤 속성에 지정 된 값을 선택 합니다.
       Property       Value   ----------------------------   BoundColumn     1   ColumnCount     3   ColumnHeads     True   RowSource       Sheet1!A2:A5
  9. ListBox 컨트롤 todisplay ListBox 컨트롤의 코드 창을 두 번 클릭 합니다.
  10. 코드 창에 다음 코드를 입력 합니다.
    Private Sub ListBox1_Change()    Dim SourceData As Range    Dim Val1 As String, Val2 As String, Val3 As String        Set SourceRange = Range(ListBox1.RowSource)        Val1 = ListBox1.Value    Val2 = SourceRange.Offset(ListBox1.ListIndex, 1).Resize(1, 1).Value    Val3 = SourceRange.Offset(ListBox1.ListIndex, 2).Resize(1, 1).Value        Label1.Caption = Val1 & " " & Val2 & " " & Val3End Sub
  11. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
ListBox 컨트롤의 항목을 클릭할 때 레이블 세 항목이 있는 항목을 표시 하려면 변경 됩니다.

워크시트에 바인딩된 ListBox 컨트롤에서 항목을 모두 제거 하는 방법

워크시트에 바인딩된 ListBox 컨트롤에서 모든 항목을 제거 하려면 컨트롤의 RowSource 속성에 저장 된 값을 지웁니다. 워크시트에 바인딩된 ListBox 컨트롤에서 항목을 제거 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. Sheet1의 셀에 a1: a5, ListBox 컨트롤을 채우는 데 사용할 원하는 값을 입력 합니다.
  3. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  4. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  5. 사용자 정의 폼에 ListBox 컨트롤을 추가 합니다.
  6. ListBox 컨트롤과 한 다음 속성을 마우스 오른쪽 단추로 클릭 합니다.
  7. RowSource 속성에 입력 Sheet1! A1: A5.
  8. 사용자 정의 폼에 CommandButton 컨트롤을 추가 합니다.
  9. CommandButton 컨트롤의 코드 창에 있는 CommandButton 컨트롤 todisplay를 두 번 클릭 합니다.
  10. 코드 창에 CommandButton1 Click 이벤트에 다음 코드를 입력 합니다.
    Private Sub CommandButton1_Click()    ListBox1.RowSource = ""End Sub
  11. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.

    사용자 정의 폼에 추가 된 ListBox컨트롤을 Sheet1에 입력 한 thevalues 채워집니다.
  12. CommandButton1를 클릭 합니다.
ListBox1에서 모든 항목이 제거 됩니다.

워크시트에 바인딩되지 않은 ListBox 컨트롤에서 항목을 모두 제거 하는 방법

목록에서 워크시트에 바인딩되지 않은 경우 ListBox 컨트롤에서 모든 항목을 제거 하는 하나의 VBA 명령이 없기 때문입니다. Visual Basic 배열에서 채워지는 목록 상자 컨트롤에서 모든 항목을 제거 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. 사용자 정의 폼에 ListBox 컨트롤을 추가 합니다.
  5. 삽입 메뉴에서모듈 모듈 시트 삽입을 클릭 합니다.
  6. 코드 창에 다음 코드를 입력 합니다.
    Sub PopulateListBox()    Dim MyArray As Variant    Dim Ctr As Integer    MyArray = Array("Apples", "Oranges", "Peaches", "Bananas", "Pineapples")        For Ctr = LBound(MyArray) To UBound(MyArray)        UserForm1.ListBox1.AddItem MyArray(Ctr)    Next        UserForm1.ShowEnd Sub 
  7. 사용자 정의 폼에 CommandButton 컨트롤을 추가 합니다.
  8. CommandButton 컨트롤의 코드 창에 있는 CommandButton 컨트롤 todisplay를 두 번 클릭 합니다.
  9. 코드 창에 CommandButton1 Click 이벤트에 다음 코드를 입력 합니다.
    Private Sub CommandButton1_Click()    For i = 1 To ListBox1.ListCount        ListBox1.RemoveItem 0    Next IEnd Sub
  10. 도구 메뉴에서매크로클릭 하 고 PopulateListBox실행을 클릭 합니다.

    ListBox 컨트롤 채워지며 사용자 정의 폼이 표시 됩니다.
  11. CommandButton1를 클릭 합니다.
ListBox1에서 모든 항목이 제거 됩니다.

ListBox 컨트롤에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조 하는 다음 문서 번호를 클릭 합니다.
161598 OFF: 콤보 상자 또는 목록 상자에 Excel 이나 Word로 데이터를 추가 하는 방법
211446 XL2000: TextColumn 속성의 첫 번째 열만 표시 됩니다.
211896 XL2000: 사용자 정의 폼의 조합 목록 편집 컨트롤을 시뮬레이션 하는 방법
211899 XL2000: 문제를 ListBox 컨트롤의 열 머리글을 설정 합니다.
213721 XL2000: 목록 상자 또는 콤보 상자에서 모든 항목을 제거 하는 방법
213722 XL2000: TextColumn 속성을 사용 하는 방법
213723 XL2000: 여러 열을 표시 하는 목록 상자에서 값을 반환 하는 방법
213746 XL2000: 여러 범위를 사용 하 여 목록 상자 컨트롤을 작성 하는 방법
213748 XL2000: 다른 목록 상자 기반으로 한 목록 상자 채우기 방법
213752 XL2000: RowSource 데이터 바인딩된 경우 오류가 발생 하면 AddItem 메서드를 사용 하 여
213756 XL2000: RemoveItem 메서드를 사용 하 여 목록 상자 또는 콤보 상자 컨트롤을 사용 하 여
213759 XL2000: 목록 상자에서 선택 된 항목을 확인 하는 방법

콤보 상자 컨트롤

드롭다운 목록 상자 또는 콤보 상자 목록의 값을 선택 하거나 새 값을 입력할 수 있는 ComboBox 컨트롤을 사용할 수 있습니다. Style 속성 드롭 다운 목록 상자 또는 콤보 상자 콤보 상자 컨트롤 작동을 결정 합니다.

참고: 모든 예제에서는 ListBox 컨트롤에 대 한 앞 절의 "다중 선택 ListBox 컨트롤에서에서 선택한 항목을 얻는 방법" 예를 제외 하 고는 ComboBox 컨트롤에도 적용할 수 있습니다.

ComboBox 컨트롤을 워크시트에 바인딩되지 않은 경우 목록에 새 항목을 추가 하는 방법

ComboBox 컨트롤의 목록에 없는 값을 입력할 때 목록에 새 값을 추가 하는 것이 좋습니다. ComboBox 컨트롤을 워크시트에 바인딩되어 있지 않으면 콤보 상자 컨트롤에 입력 한 새 값을 추가 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. 사용자 정의 폼에 콤보 상자 컨트롤을 추가 합니다.
  5. 삽입 메뉴에서모듈 모듈 시트 삽입을 클릭 합니다.
  6. 코드 창에 다음 코드를 입력 합니다.
    Sub PopulateComboBox()     Dim MyArray As Variant     Dim Ctr As Integer     MyArray = Array("Apples", "Oranges", "Peaches", "Bananas", "Pineapples")         For Ctr = LBound(MyArray) To Ubound(MyArray)         UserForm1.ComboBox1.AddItem MyArray(Ctr)     Next         UserForm1.Show End Sub
  7. 사용자 정의 폼에 CommandButton 컨트롤을 추가 합니다.
  8. CommandButton 컨트롤의 코드 창에 있는 CommandButton 컨트롤 todisplay를 두 번 클릭 합니다.
  9. 코드 창에 CommandButton1 Click 이벤트에 다음 코드를 입력 합니다.
    Private Sub CommandButton1_Click()     Dim listvar As Variant          listvar = ComboBox1.List         On Error Resume Next     ' If the item is not found in the list...     If IsError(WorksheetFunction.Match(ComboBox1.Value, listvar, 0)) Then         ' add the new value to the list.         ComboBox1.AddItem ComboBox1.Value     End If End Sub
  10. 도구 메뉴에서매크로클릭 하 고 PopulateListBox실행을 클릭 합니다.

    ComboBox 컨트롤 채워지며 사용자 정의 폼이 표시 됩니다.
  11. ComboBox 컨트롤에 입력 Mangoes 또는 모든 값 목록에 없는 thatis.
  12. CommandButton1를 클릭 합니다.
이제 입력 한 새 값이 목록의 끝에 나타납니다.

콤보 상자 컨트롤 워크시트에 바인딩된 경우 목록에 새 항목을 추가 하는 방법

사용자가 콤보 상자 컨트롤의 목록에 없는 값을 목록에 새 값을 추가 하는 것이 좋습니다. ComboBox 컨트롤을 목록에 입력 한 새 값을 추가 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. Sheet1의 셀에 a1: a5를 ComboBox 컨트롤을 채우는 데 사용할 원하는 값을 입력 합니다.
  3. Sheet1의 a1: a5 셀을 선택 합니다.
  4. 삽입 메뉴에서이름을 가리키고 정의클릭 합니다.

    통합 문서에 있는 이름 상자에 입력 ListRange 를 클릭 하 고 확인. 그렇기 때문에 정의 된 이름은 ListRange입니다. 워크시트의 콤보 상자 컨트롤의 RowSource 속성에 바인딩할 ListRange 는 정의 된 이름을 사용할 수 있습니다.
  5. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  6. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  7. 사용자 정의 폼에 콤보 상자 컨트롤을 추가 합니다.
  8. ComboBox1에 대 한 속성 을 입력합니다 Sheet1! ListRangeRowSource 속성.
  9. 사용자 정의 폼에 CommandButton 컨트롤을 추가 합니다.
  10. CommandButton 컨트롤의 코드 창에 있는 CommandButton 컨트롤 todisplay를 두 번 클릭 합니다.
  11. 코드 창에 CommandButton1 Click 이벤트에 다음 코드를 입력 합니다.
    Private Sub CommandButton1_Click()    Dim SourceData As Range    Dim found As Object        Set SourceData = Range("ListRange")    Set found = Nothing    ' Try to find the value on the worksheet.    Set found = SourceData.Find(ComboBox1.Value)        ' If the item is not found in the list...    If found Is Nothing Then        ' redefine ListRange.        SourceData.Resize(SourceData.Rows.Count + 1, 1).Name = "ListRange"        ' Add the new item to the end of the list on the worksheet.        SourceData.Offset(SourceData.Rows.Count, 0).Resize(1, 1).Value _         = ComboBox1.Value        ' Reset the list displayed in the ComboBox.        ComboBox1.RowSource = Range("listrange").Address(external:=True)    End IfEnd Sub
  12. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.

    Sheet1에서 사용자 정의 폼이 나타납니다.
  13. ComboBox 컨트롤의 목록에 없는 값을 입력 합니다.
  14. CommandButton1를 클릭 합니다.
ComboBox 컨트롤에 입력 한 새 항목 목록에 추가 되 고 콤보 상자 컨트롤에 바인딩되어 있는 목록 셀 a1: a 6을 포함 하도록 확장 됩니다.

사용자 정의 폼 나타날 때 ComboBox 컨트롤 목록을 표시 하는 방법

경우에 따라 사용자 정의 폼이 처음 나타날 때 ComboBox 컨트롤 목록을 표시 하는 데 유용할 수 있습니다. 다음 예제에서는 사용자 정의 폼의 Activate 이벤트를 사용합니다. ComboBox 컨트롤의 목록을 표시 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. Sheet1의 셀에 a1: a5를 ComboBox 컨트롤을 채우는 데 사용할 원하는 값을 입력 합니다.
  3. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  4. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  5. 사용자 정의 폼에 콤보 상자 컨트롤을 추가 합니다.
  6. ComboBox1에 대 한 속성 을 입력합니다 Sheet1! A1: A5RowSource 속성.
  7. 사용자 정의 폼에 대 한 코드 창을 표시 하려면 사용자 정의 폼 을 두 번 클릭 합니다.
  8. 코드 창에서 명령 단추 Click 이벤트에 다음 코드를 입력 합니다.
    Private Sub UserForm_Activate()           ComboBox1.DropDown       End Sub
  9. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
사용자 정의 폼 Sheet1에 나타나고 ComboBox1에 대 한 목록을 볼 수 있습니다.

다른 콤보 상자 컨트롤에 있는 항목을 선택할 때 ComboBox 컨트롤 목록을 표시 하는 방법

다른 콤보 상자 컨트롤에서 선택 하는 경우 자동으로 한 ComboBox 컨트롤 목록을 표시 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 셀 a1: a 10에 Sheet1, ComboBox 컨트롤을 채우는 데 사용할 원하는 값을 입력 합니다.
  3. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  4. 삽입 메뉴에서모듈을 클릭 합니다.
  5. 모듈의 코드 창에 다음 코드를 입력 합니다.
    Sub DropDown_ComboBox()    UserForm1.ComboBox2.DropDownEnd Sub
  6. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  7. 사용자 정의 폼에 콤보 상자 컨트롤을 추가 합니다.
  8. ComboBox1에 대 한 속성 을 입력합니다 Sheet1! A1: A5RowSource 속성.
  9. ComboBox 컨트롤에 대 한 openthe 코드 창으로 ComboBox 컨트롤을 두 번 클릭 합니다.
  10. ComboBox 컨트롤의 코드 창에서 콤보 상자 Click 이벤트에 다음 코드를 입력 합니다.
    Private Sub ComboBox1_Click()    Application.OnTime Now, "DropDown_ComboBox"End Sub
  11. 사용자 정의 폼에 두 번째 콤보 상자 컨트롤을 추가 합니다.
  12. ComboBox2에 대 한 속성 을 입력합니다 Sheet1! A6:A10RowSource 속성.
  13. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
ComboBox1 목록에서 항목을 클릭 하면 ComboBox2 에 대 한 목록이 자동으로 나타납니다.

ComboBox 컨트롤에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조 하는 다음 문서 번호를 클릭 합니다.
161598 OFF: 콤보 상자 또는 목록 상자에 Excel 이나 Word로 데이터를 추가 하는 방법
211446 XL2000: TextColumn 속성의 첫 번째 열만 표시 됩니다.
211899 XL2000: 문제를 ListBox 컨트롤의 열 머리글을 설정 합니다.
213717 DropDown 메서드를 사용 하 여 콤보 상자를 사용 하 여 XL2000: 런타임 오류
213718 XL2000: 표시 되는 사용자 정의 폼 콤보 상자 목록을 표시 하는 방법
213721 XL2000: 목록 상자 또는 콤보 상자에서 모든 항목을 제거 하는 방법
213722 XL2000: TextColumn 속성을 사용 하는 방법
213752 XL2000: 행 원본에는 데이터를 바인딩할 때 오류가 발생 AddItem 메서드를 사용 하 여
213756 XL2000: RemoveItem 메서드를 사용 하 여 목록 상자 또는 콤보 상자 컨트롤을 사용 하 여

Frame 컨트롤

프레임 컨트롤을 사용 하 여 사용자 정의 폼에서 논리적으로 관련 된 항목을 그룹화. 프레임 컨트롤 OptionButton 컨트롤을 그룹화 하는 데 자주 사용 됩니다.

Frame 컨트롤에 있는 모든 컨트롤을 반복 하는 방법

를 사용 하 여... 다음 루프 Frame 컨트롤에 있는 모든 컨트롤에 액세스 하려면 다음이 단계를 수행 합니다.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. 사용자 정의 폼에 Frame 컨트롤을 추가 합니다.
  5. Frame 컨트롤에 OptionButton 컨트롤을 추가 합니다.

    Frame 컨트롤에 두 개의 OptionButton 컨트롤을 추가 하려면이 단계를 반복 합니다.
  6. 프레임 컨트롤 프레임 컨트롤에 대 한 코드 창을 열려면 두 번 클릭 합니다.
  7. 코드 창에서 프레임의 Click 이벤트에 다음 코드를 입력 합니다.
    Private Sub Frame1_Click()    Dim Ctrl As Control        For Each Ctrl In Frame1.Controls        Ctrl.Enabled = Not Ctrl.Enabled    NextEnd Sub
  8. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
  9. 해당 사용자 정의 폼에 Frame컨트롤을 클릭 합니다.
컨트롤을 클릭 하면 처음으로 Frame 컨트롤의 모든 컨트롤을 사용할 수 있습니다. Frame 컨트롤을 다시 클릭 하면 컨트롤은 다시 사용 가능.

OptionButton 컨트롤

OptionButton 컨트롤 그룹을 옵션 그룹 중 한 옵션을 선택 하 여 사용할 수 있습니다. OptionButton 컨트롤 그룹에 다음 방법 중 하나를 사용할 수 있습니다.
  • Frame 컨트롤
  • GroupName 속성
참고:진정한 가치에 값을 Yes 값은 OptionButton 을 선택 했는지를 나타냅니다. Off 값을 NoFalse 값에 optionbutton을 추가 하는 선택 되어 있지 않은지를 나타냅니다.

OptionButton OptionButton 컨트롤 프레임 컨트롤에 있을 때 선택 된 컨트롤을 확인 하는 방법

프레임 컨트롤을 사용 하 여 고 OptionButtons 컨트롤을 그룹화 하는 경우 Frame 컨트롤에 있는 모든 컨트롤을 반복 하 고 각 컨트롤의 Value 속성을 검사 하 여 선택 된 OptionButton 컨트롤을 결정할 수 있습니다. 선택 된 OptionButton 컨트롤을 확인 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. 사용자 정의 폼에 Frame 컨트롤을 추가 합니다.
  5. Frame 컨트롤에 OptionButton 컨트롤을 추가 합니다.

    Frame 컨트롤에 두 개의 OptionButton 컨트롤을 추가 하려면이 단계를 반복 합니다.
  6. Frame 컨트롤 외부 사용자 정의 폼에 CommandButton 컨트롤을 추가 합니다.
  7. 사용자 정의 폼에 대 한 코드 창에 있는 CommandButton 컨트롤 todisplay를 두 번 누릅니다.
  8. 코드 창에 CommandButton1 Click 이벤트에 다음 코드를 입력 합니다.
    Private Sub CommandButton1_Click()     For Each x In Frame1.Controls         If x.Value = True Then             MsgBox x.Caption         End If     Next End Sub
  9. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
  10. 사용자 정의 폼하나의 OptionButton 컨트롤 누르고CommandButton1.
현재 선택 된 OptionButton 컨트롤의 캡션을 포함 된 메시지 상자가 나타납니다.

선택 된 OptionButton 컨트롤을 확인 하는 방법

다음 예제에서는 그룹 1에서 선택 된 OptionButton 컨트롤을 결정 하는 것입니다. 두 개의 OptionButton 컨트롤 그룹에 있는 사용자 정의 폼을 만들려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. 사용자 정의 폼에 Frame 컨트롤을 추가 합니다.
  5. Frame 컨트롤에 있는 OptionButton 컨트롤을 추가 합니다.

    Frame 컨트롤에 두 개의 OptionButton 컨트롤을 추가 하려면이 단계를 반복 합니다.
  6. OptionButton 컨트롤에 대 한 입력 그룹 1GroupName 속성.
  7. 4, 5 세 개의 OptionButton 컨트롤이 포함 된 두 번째 프레임 컨트롤을 만드는 단계를 반복 합니다.
  8. 두 번째 프레임 컨트롤 각 OptionButton 컨트롤에 대 한 입력 그룹 2GroupName 속성.
  9. 사용자 정의 폼 프레임 컨트롤 외부에 있는 CommandButton 컨트롤을 추가 합니다.
  10. 사용자 정의 폼에 대 한 코드 창에 있는 CommandButton 컨트롤 todisplay를 두 번 누릅니다.
  11. 코드 창에 CommandButton1 Click 이벤트에 다음 코드를 입력 합니다.
    Private Sub CommandButton1_Click()     Dim x As Control          ' Loop through ALL the controls on the UserForm.     For Each x In Me.Controls         ' Check to see if "Option" is in the Name of each control.         If InStr(x.Name, "Option") Then             ' Check Group name.             If x.GroupName = "Group1" Then                 ' Check the status of the OptionButton.                 If x.Value = True Then                     MsgBox x.Caption                     Exit For                 End If             End If         End If     Next End Sub
  12. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
  13. UserForm을에 OptionButton 컨트롤에서 Group1 누른CommandButton1.
현재 선택 되어 있는 OptionButton 컨트롤의 캡션을 포함 된 메시지 상자가 나타납니다.

OptionButton 컨트롤에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
213724 TripleState 속성을 사용 하 여 옵션 단추의 XL2000: 문제

CheckBox 컨트롤

True 또는 false 값을 표시 하려면 CheckBox 컨트롤을 사용할 수 있습니다. CheckBox 컨트롤에서 확인 표시로 표시 되는 값이 True를 나타냅니다. 확인란 옆에 확인 표시가 없는 나타나는 False값을 나타냅니다. TripleState 속성의 값이 True인 경우 CheckBox 컨트롤 값이 Null있을 수도 있습니다. Null 값을 CheckBox 컨트롤을 사용할 수 없게 나타납니다.

참고: 값에서 값을 진정한 가치는 CheckBox 컨트롤을 선택 했는지를 나타냅니다. Off 값을 NoFalse 값을 CheckBox 컨트롤의 선택이 취소 되어 나타냅니다.

CheckBox 컨트롤의 값을 확인 하는 방법

CheckBox 컨트롤의 현재 값을 반환 하려면 Value 속성을 사용 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. 사용자 정의 폼에 확인란 컨트롤을 추가 합니다.
  5. CheckBox1속성 목록에서 선택 True 이면TripleState 속성.
  6. CheckBox 컨트롤 todisplay의 코드 창에 CheckBox 컨트롤을 두 번 누릅니다.
  7. 코드 창에서 CheckBox1 변경 이벤트에 다음 코드를 입력 합니다.
    Private Sub CheckBox1_Change()    Select Case CheckBox1.Value        Case True            CheckBox1.Caption = "True"        Case False            CheckBox1.Caption = "False"        Case Else            CheckBox1.Caption = "Null"    End SelectEnd Sub
  8. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
현재 값을 반영 하기 위해 해당 CheckBox 컨트롤의 캡션을 확인란 컨트롤을 클릭 합니다.

ToggleButton 컨트롤

ToggleButton 컨트롤에 있는 모양은 CommandButton 컨트롤을 클릭할 때까지. ToggleButton 컨트롤을 클릭할 때 누를 또는 아래로 나타납니다. 단추가 선택 되어 있지 않으면 ToggleButton 컨트롤의 Value 속성은 True 는 단추를 선택 하 고 False 입니다. TripleState 속성의 값이 True이면 ToggleButton 컨트롤 값이 Null있을 수도 있습니다. ToggleButton 컨트롤 값이 Null 을 사용할 수 없게 하려면 나타납니다.

참고:진정한 가치에 값을 Yes토글 단추 컨트롤이 선택 되어 있는지를 나타냅니다. Off 값을 NoFalse토글 단추 컨트롤이 선택 되어 있지 않은지를 나타냅니다.

ToggleButton 컨트롤의 값을 구하는 방법

ToggleButton 컨트롤의 값을 얻으려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. 사용자 정의 폼의 토글 단추 컨트롤을 추가 합니다.
  5. 사용자 정의 폼에 Label 컨트롤을 추가 합니다.
  6. ToggleButton 컨트롤 toopen 토글 단추 컨트롤에 대 한 코드 창을 두 번 클릭 합니다.
  7. 코드 창에서 ToggleButton1Click 이벤트에 다음 코드를 입력 합니다.
    Private Sub ToggleButton1_Click()    If ToggleButton1.Value = True Then        ' Set UserForm background to Red.        Me.BackColor = RGB(255, 0, 0)    Else        ' Set UserForm background to Blue.        Me.BackColor = RGB(0, 0, 255)    End IfEnd Sub
  8. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
ToggleButton 컨트롤을 폼의 배경 색 클릭 합니다.

상호 배타적인 ToggleButton 컨트롤 그룹을 만드는 방법

MouseUp 이벤트를 사용 하 여 변수를 설정 하 고 ExclusiveToggleButtons 프로시저를 호출 하는이 예제. ExclusiveToggleButtons 프로시저는 ToggleButton 컨트롤을 선택한 다음 다른 동작을 취소 하는 결정 합니다. 상호 배타적인 ToggleButton 컨트롤 그룹을 만들려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서모듈을 클릭 합니다.
  4. 모듈의 코드 창에 다음 코드를 입력 합니다.
    ' Variable that holds the name of the ToggleButton that was clicked.Public clicked As StringSub ExclusiveToggleButtons()   Dim toggle As Control   ' Loop through all the ToggleButtons on Frame1.   For Each toggle In UserForm1.Frame1.Controls       ' If Name of ToggleButton matches name of ToggleButton       ' that was clicked...       If toggle.Name = clicked Then          '...select the button.          toggle.Value = True       Else          '...otherwise clear the selection of the button.          toggle.Value = False       End If    NextEnd Sub
  5. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  6. 사용자 정의 폼에 Frame 컨트롤을 추가 합니다.
  7. Frame 컨트롤의 ToggleButton 컨트롤을 추가 합니다.

    Frame 컨트롤에 두 개의 ToggleButton 컨트롤을 추가 하려면이 단계를 반복 합니다.
  8. 사용자 정의 폼에 대 한 후 코드 창 프레임 컨트롤을 두 번 누릅니다.
  9. 모듈의 코드 창에 다음 codefor ToggleButton MouseUp 이벤트를 입력 합니다.
    Private Sub ToggleButton1_MouseUp(ByVal Button As Integer, _              ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)       clicked = ToggleButton1.Name       Application.OnTime Now, "ExclusiveToggleButtons"    End Sub    Private Sub ToggleButton2_MouseUp(ByVal Button As Integer, _              ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)        clicked = ToggleButton2.Name        Application.OnTime Now, "ExclusiveToggleButtons"    End Sub    Private Sub ToggleButton3_MouseUp(ByVal Button As Integer, _              ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)        clicked = ToggleButton3.Name        Application.OnTime Now, "ExclusiveToggleButtons"    End Sub
  10. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
ToggleButton 컨트롤을 클릭 하면 이전에 선택한 ToggleButton 컨트롤은 취소 됩니다.

TabStrip 컨트롤

TabStrip 컨트롤을 사용 하 여 다양 한 컨트롤 집합에 대 한 정보 집합을 볼 수 있습니다.

TabStrip 컨트롤을 프로그래밍 방식으로 제어 하는 방법

선택 된 탭에 따라 이미지 컨트롤의 BackColor 속성을 변경 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual Basic 편집기를 클릭 하십시오.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. TabStrip 컨트롤을 사용자 정의 폼에 추가 합니다.
  5. TabStrip 컨트롤의 포함 하는 이미지 컨트롤을 추가할 수 있지만 탭에 적용 되지 않습니다.
  6. Image1 속성 창에 입력& H000000FF &BackColor 속성.
  7. TabStrip 컨트롤에 대 한 openthe 코드 창으로 TabStrip 컨트롤을 두 번 클릭 합니다.
  8. 코드 창에서 TabStrip1 변경 이벤트에 다음 코드를 입력 합니다.
    Private Sub TabStrip1_Change()    Dim i As Integer    i = TabStrip1.SelectedItem.Index    Select Case i        Case 0            ' If Tab1 is selected, change the color of Image control to Red.            Image1.BackColor = RGB(255, 0, 0)        Case 1            ' If Tab2 is selected, change the color of Image control to Green.            Image1.BackColor = RGB(0, 255, 0)    End SelectEnd Sub
  9. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
활성화 된 TabStrip 컨트롤의 페이지에 따라 해당 이미지 컨트롤의 색입니다.

TabStrip 컨트롤에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
213254 XL2000: TabStrip 컨트롤에 사용자 정의 폼을 사용 하는 방법

MultiPage 컨트롤

많은 여러 범주로 정렬할 수 있는 정보를 사용 하 여 MultiPage 컨트롤을 사용 합니다. MultiPage 컨트롤 하나로 구성 된 또는 더 많은 페이지 를 각각 다른 컨트롤 집합을 포함 합니다. MultiPage 컨트롤의 Value 속성을 설정 하 여 현재 페이지를 프로그래밍 방식으로 설정할 수 있습니다.

MultiPage 컨트롤을 프로그래밍 방식으로 제어 하는 방법

MultiPage 컨트롤을 추가 하 고 매크로 사용 하 여 제어 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. MultiPage 컨트롤을 사용자 정의 폼에 추가 합니다.
  5. MultiPage 컨트롤에 1 페이지에 Label 컨트롤을 추가 합니다.
  6. MultiPage 컨트롤의 페이지 1에 TextBox 컨트롤을 추가 합니다.
  7. MultiPage 컨트롤의 페이지 2클릭 하 고 단계 5and 반복 6 Label 컨트롤과 TextBox 컨트롤을 추가할 수 있습니다.
  8. MultiPage 컨트롤에 대 한 openthe 코드 창으로 MultiPage 컨트롤을 두 번 클릭 합니다.
  9. 코드 창에서 MultiPage1 변경 이벤트에 다음 코드를 입력 합니다.
    Private Sub MultiPage1_Change()    Select Case MultiPage1.Value        ' If activating Page1...        Case 0            Label1.Caption = TextBox2.Text            TextBox1.Text = ""        ' If activating Page2...        Case 1            Label2.Caption = TextBox1.Text            TextBox2.Text = ""    End SelectEnd Sub
  10. 코드 창의 사용자 정의 폼의 Initialize 이벤트에 다음 코드를 입력 합니다.
    Private Sub UserForm_Initialize()    ' Force Page1 to be active when UserForm is displayed.    MultiPage1.Value = 0    Label1.Caption = ""End Sub
  11. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.

    1 페이지에 TextBox 컨트롤에 입력 테스트. 때 youclick TextBox22 페이지 탭을 해제 하 고 캡션 레이블 2 의 1 페이지에 있는 TextBox1 에서 항목을 변경 ("Test").

MultiPage 컨트롤을 사용 하 여 마법사 인터페이스를 만드는 방법

여러 개의 증분 단계를 수행 해야 하는 작업, 마법사 인터페이스 매우 효과적인 않을 수 있습니다. 여러 사용자 정의 폼을 사용 하는 대신 마법사 인터페이스를 만드는 MultiPage 컨트롤을 사용할 수 있습니다. 이 이때 3 페이지로 된 MultiPage 컨트롤을 조작 합니다. 사용자 정의 폼의 초기화 이벤트에 연결 된 프로시저 2 페이지 및 Page3, 고 활성 MultiPage 컨트롤의 페이지 1을 강제로 합니다.

참고:Pages 컬렉션을 사용 하 여 MultiPage 컨트롤의 페이지를 색인 하는 경우 컬렉션의 첫 번째 페이지는 페이지 0입니다. 이 여기서 또한 CommandButton 컨트롤의 캡션을 설정 하 고 해제 하면 <> 단추.

참고:CommandButton1Click 이벤트에 할당 된 프로시저의 기능을 제어는 <> 단추. CommandButton2Click 이벤트에 할당 된 프로시저의 기능을 제어는 다음 &gt; 단추. MultiPage 컨트롤을 사용 하 여 마법사 인터페이스를 만들려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. MultiPage 컨트롤을 사용자 정의 폼에 추가 합니다.
  5. 1 페이지 탭을 마우스 오른쪽 단추로 클릭 하 고 Page3 MultiPage 컨트롤에 추가 하려면새 페이지 클릭 합니다.
  6. MultiPage 컨트롤에 있는 사용자 정의 폼에 CommandButton 컨트롤을 추가 합니다.

    사용자 정의 폼에 두 번째 명령 단추 컨트롤을 추가 하려면이 단계를 반복 합니다.
  7. 사용자 정의 폼에는 Codewindow 열에 사용자 정의 폼 을 두 번 누릅니다.
  8. 코드 창의 사용자 정의 폼의 Initialize 이벤트에 다음 코드를 입력 합니다.
    Private Sub UserForm_Initialize()    With MultiPage1        ' The next 2 lines disable Page2 & Page3.        .Pages(1).Enabled = False        .Pages(2).Enabled = False        ' Make Page1 the active page.        .Value = 0    End With        ' Set the caption on the CommandButtons.    CommandButton1.Caption = "<Back"    CommandButton1.Enabled = False    CommandButton2.Caption = "Next>"End Sub' Procedure for the "<Back" buttonPrivate Sub CommandButton1_Click()    Select Case MultiPage1.Value        Case 1                                 ' If Page2 is active...            With MultiPage1                .Pages(0).Enabled = True       ' Enable Page1.                .Value = MultiPage1.Value - 1  ' Move back 1 page.                .Pages(1).Enabled = False      ' Disable Page2.            End With            CommandButton1.Enabled = False     ' Disable Back button.                    Case 2                                 ' If Page3 is active...            With MultiPage1                .Pages(1).Enabled = True       ' Enable Page2.                .Value = MultiPage1.Value - 1  ' Move back 1 page.                .Pages(2).Enabled = False      ' Disable Page3.   CommandButton2.Caption = "Next>"            End With    End SelectEnd Sub' Procedure for the "Next>" buttonPrivate Sub CommandButton2_Click()    Select Case MultiPage1.Value        Case 0                                  ' If Page1 is active...            With MultiPage1                .Value = MultiPage1.Value + 1   ' Move forward 1 page.                .Pages(1).Enabled = True        ' Enable Page2.                .Pages(0).Enabled = False       ' Disable Page1.            End With            CommandButton1.Enabled = True       ' Enable Back button.                    Case 1                                  ' If Page2 is active...            With MultiPage1                .Value = MultiPage1.Value + 1   ' Move forward 1 page.                .Pages(2).Enabled = True        ' Enable Page3.                .Pages(1).Enabled = False       ' Disable Page2.            End With            CommandButton2.Caption = "Finish"   ' Change Next button to Finish.                    Case 2                                  ' If Page3 is active...            MsgBox "Finished!"                  ' User is Finished.            Unload Me                           ' Unload the UserForm.    End SelectEnd Sub
  9. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
클릭할 때 다음 &gt;, 활성화 되는 페이지 2와 <> 단추를 사용할 수 있습니다. 클릭할 때 다음 &gt; 를 두 번째로 Page3 활성화 되 고 CommandButton2 캡션을 "완료"로 변경 합니다.

스크롤 막대 컨트롤

Label 컨트롤 같은 다른 컨트롤에 표시 되는 값을 변경 하려면 스크롤 막대 컨트롤을 사용할 수 있습니다.

스크롤 막대 컨트롤의 값에 따라 Label 컨트롤을 변경 하는 방법

스크롤 막대 컨트롤의 Value 속성의 현재 설정에 Label 컨트롤의 Caption 속성을 변경 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. 스크롤 막대 컨트롤을 사용자 정의 폼에 추가 합니다.
  5. 사용자 정의 폼에 Label 컨트롤을 추가 합니다.
  6. 스크롤 막대 컨트롤에 대 한 openthe 코드 창 스크롤 막대 컨트롤을 두 번 클릭 합니다.
  7. 코드 창에서 ScrollBar1 변경 이벤트에 다음 코드를 입력 합니다.
    Private Sub ScrollBar1_Change()    Label1.Caption = ScrollBar1.ValueEnd Sub
  8. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
스크롤 막대 컨트롤을 사용 하 여 스크롤할 때 Label1ScrollBar 컨트롤의 현재 값으로 업데이트 됩니다.

SpinButton 컨트롤

SpinButton 컨트롤 처럼 스크롤 막대 컨트롤은 Label 컨트롤 같은 다른 컨트롤의 값을 감소 또는 증가에 자주 사용 됩니다. SmallChange 속성은 클릭 하면 SpinButton 컨트롤 크기 값이 변경 결정 합니다.

TextBox 컨트롤에 저장 된 날짜 감소 또는 증가 하는 SpinButton 컨트롤을 추가 하는 방법

TextBox 컨트롤에 저장 된 날짜 감소 또는 증가 시키는 SpinButton 컨트롤을 추가 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. SpinButton 컨트롤을 사용자 정의 폼에 추가 합니다.
  5. 사용자 정의 폼에 TextBox 컨트롤을 추가 합니다.
  6. SpinButton 컨트롤 toopen SpinButton 컨트롤의 코드 창을 두 번 클릭 합니다.
  7. 코드 창에서 SpinButton1 SpinUp 이벤트에 다음 코드를 입력 합니다.
    Private Sub SpinButton1_SpinUp()    TextBox1.Text = DateValue(TextBox1.Text) + 1End Sub
  8. 코드 창에서 SpinButton1 SpinDown 이벤트에 다음 코드를 입력 합니다.
    Private Sub SpinButton1_SpinDown()    TextBox1.Text = DateValue(TextBox1.Text) - 1End Sub
  9. 코드 창의 사용자 정의 폼의 Initialize 이벤트에 다음 코드를 입력 합니다.
    Private Sub UserForm_Initialize()    TextBox1.Text = DateEnd Sub
  10. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.
사용자 정의 폼 표시 될 때 TextBox1에 현재 날짜가 나타납니다. SpinButton 컨트롤을 클릭 하면 날짜가 하루 증가 또는 감소 되었습니다.

이 예에서 SpinButton1SmallChange 속성을 변경 하는 경우 하면 영향을 주지 않습니다 SpinButton1클릭 하면 TextBox1 에 있는 항목에 의해 변경 되는 일 수입니다. 일 수가 SpinUp 이벤트와 SpinButton1SpinDown 이벤트에 연결 하는 절차에 의해서만 결정 됩니다.

SpinButton 컨트롤에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
213224 스핀 단추를 사용 하 여 날짜를 사용 하 여 XL2000: Visual Basic 예제

RefEdit 컨트롤

RefEdit 컨트롤 Excel에 설정 된 참조 상자의 동작을 모방 합니다. RefEdit 컨트롤에 저장 되어 있는 현재 셀 주소를 Value 속성을 사용할 수 있습니다.

RefEdit 컨트롤을 사용 하 여 선택한 범위에 따라 셀 범위를 채우는 방법

셀을 채우려면 RefEdit 컨트롤을 사용 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. 사용자 정의 폼을 RefEdit 컨트롤을 추가 합니다.
  5. 사용자 정의 폼에 CommandButton 컨트롤을 추가 합니다.
  6. CommandButton 컨트롤의 코드 창에 있는 CommandButton 컨트롤 toopen를 두 번 클릭 합니다.
  7. 코드 창에 CommandButton1 Click 이벤트에 다음 코드를 입력 합니다.
    Private Sub CommandButton1_Click()    Dim MyRange As String    MyRange = RefEdit1.Value    Range(MyRange).Value = "test"    Unload MeEnd Sub
  8. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.

    UserFormappears입니다.
  9. RefEdit 컨트롤 단추를 클릭 합니다.

    구성 요소 개발자는 사용자 정의 폼을 축소 합니다.
  10. A1: a5, 같은 셀 범위를 선택 하 고 확장 사용자 정의 폼 RefEdit 컨트롤에 thebutton를 클릭 합니다.
  11. CommandButton1를 클릭 합니다.
사용자 정의 폼이 닫히고 선택한 셀 단어 "test" 포함.

RefEdit 컨트롤에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
213776 XL2000: 사용자 정의 폼을 RefEdit 컨트롤을 사용 하는 방법

이미지 컨트롤

Image 컨트롤의 목적은 사용자 정의 폼에 그림을 표시 합니다. 그림 이미지 컨트롤을 런타임 시에 할당 하려면 LoadPicture 함수를 사용 합니다.

이미지 컨트롤에 그림을 로드 하는 방법

이미지 컨트롤을 클릭 했을 때 로드할 그림을 선택 하 라는 메시지가 표시 되는 이미지 컨트롤을 삽입 하려면 다음과이 같이 하십시오.
  1. Excel을 시작한 다음 새로운 빈 통합 문서를 엽니다.
  2. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  3. 삽입 메뉴에서 사용자 정의 폼 통합 문서에 삽입할사용자 정의 폼 클릭 합니다.
  4. 사용자 정의 폼에 이미지 컨트롤을 추가 합니다.
  5. 이미지 컨트롤에 대 한 코드 창을 열려면 이미지 컨트롤을 두 번 클릭 합니다.
  6. 코드 창에서 Image1 Click 이벤트에 다음 코드를 입력 합니다.
    Private Sub Image1_Click()    Dim fname As String        ' Display the Open dialog box.    fname = Application.GetOpenFilename(filefilter:= _            "Bitmap Files(*.bmp),*.bmp", Title:="Select Image To Open")        ' If you did not click Cancel...    If fname <> "False" Then        ' Load the bitmap into the Image control.        Image1.Picture = LoadPicture(fname)        ' Refresh the UserForm.        Me.Repaint    End IfEnd Sub
  7. 실행 메뉴에서 RunSub/사용자 정의 폼을 클릭 합니다.

    사용자 정의 폼이 나타납니다.
  8. Image 컨트롤을 클릭 합니다.

    Whenyou Image 컨트롤을 선택 이미지 열기 대화 상자 boxappears를 누르고 thecontrol를 삽입할 비트맵 파일을 선택할 수 있습니다.
이미지 컨트롤에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
213732 XL2000: LoadPicture 함수를 사용 하 여 이미지 컨트롤을 사용 하 여

추가 정보

개체 브라우저

모든 속성 및 메서드는 특정 명령에 대 한 전체 목록은 개체 브라우저에서 사용할 수 있는 경우 Excel에서이 정보를 찾으려면 다음과이 같이 하십시오.
  1. 도구 메뉴에서매크로가리키고 Visual BasicEditor를 클릭 합니다.
  2. 보기 메뉴에서 개체 브라우저를 클릭 합니다.
  3. 검색 텍스트 상자에 원하는 컨트롤 이름을 입력 한 다음 검색을 누릅니다.
Visual Basic 편집기에서 개체 브라우저를 사용 하는 방법에 대 한 자세한 내용은 클릭 Microsoft Visual Basic 도움말도움말 메뉴에서, 형식 개체 브라우저 Office 길잡이나 도움말 마법사에서 다음 항목을 보려면 검색 클릭 하 고 있습니다.
컴퓨터에서 Microsoft Excel 도움말을 설치 하는 방법에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
231946 OFF2000: 추가/제거 단일 Office 프로그램이 나 구성 하는 방법

경고: 이 문서는 자동으로 번역되었습니다.

속성

문서 ID: 829070 - 마지막 검토: 09/23/2015 14:18:00 - 수정: 3.0

Microsoft Office Excel 2003, Microsoft Excel 2010, Microsoft Office Excel 2007, Excel 2016, Microsoft Excel 2013

  • kbprogramming kbfunctions kbhowtomaster kbhowto kbmt KB829070 KbMtko
피드백