엑셀 VBA 다중 열 콤보 상자
우리는 멀티 컬럼 콤보 상자가 포함 된 사용자 정의 폼을 만들어 엑셀 VBA에서 프로그램을보고 아래.
사용자 정의 폼 우리는 다음과 같은 모양을 만들려고하고있다 :
이 정의 폼을 만들려면 다음 단계를 실행합니다.
-
Visual Basic 편집기. 프로젝트 탐색기가 보이지 않으면보기 프로젝트 탐색기를 클릭합니다.
삽입, 사용자 정의 폼을 클릭합니다. 도구 상자가 자동으로 나타나지 않으면,보기, 도구 상자를 클릭합니다. 화면은 다음과 같이 설정해야합니다.
레이블, 콤보 상자 및 명령 단추를 추가합니다. 이것이 완료되면, 그 결과는 앞서 도시 정의 폼의 화상과 일치한다. 예를 들어, 도구 상자에서 콤보 상자를 클릭하여 콤보 상자 컨트롤을 만듭니다. 다음으로, 당신은 사용자 정의 폼에 콤보 상자를 드래그 할 수 있습니다.
-
이름과 컨트롤의 캡션을 변경할 수 있습니다. 이름은 엑셀 VBA 코드에 사용됩니다. 자막은 화면에 나타나는 것들이다. 이 컨트롤의 이름을 변경하는 것이 좋습니다,하지만 우리는이 예제에서 몇 가지 컨트롤을 가지고 있기 때문에 여기에 필요하지 않습니다. 사용자 정의 폼, 라벨 및 명령 버튼의 캡션을 변경하려면,보기, 속성 창을 클릭하고 각 컨트롤을 클릭합니다.
-
사용자 정의 폼을 보여 워크 시트에 명령 단추를 배치하고 다음 코드 줄을 추가하려면 :
Private Sub CommandButton1_Click() UserForm1.Show End Sub
우리는 지금 하위 UserForm_Initialize을 만들 것입니다. 사용자 정의 폼에 대한 표시 방법을 사용하면,이 서브가 자동으로 실행됩니다.
-
Visual Basic 편집기.
프로젝트 탐색기 7. 오른쪽 UserForm1을 클릭 한 다음 코드보기를 클릭하십시오.
왼쪽 드롭 다운 목록에서 사용자 정의 폼을 선택 8.. 오른쪽 드롭 다운 목록에서 초기화를 선택합니다.
다음 코드 줄을 추가 9. :
Private Sub UserForm_Initialize() ComboBox1.ColumnCount = 2 Dim Films(1 To 5, 1 To 2) As String Dim i As Integer, j As Integer Films(1, 1) = "Lord of the Rings" Films(2, 1) = "Speed" Films(3, 1) = "Star Wars" Films(4, 1) = "The Godfather" Films(5, 1) = "Pulp Fiction" Films(1, 2) = "Adventure" Films(2, 2) = "Action" Films(3, 2) = "Sci-Fi" Films(4, 2) = "Crime" Films(5, 2) = "Drama" ComboBox1.List = Films End Sub
설명 : 첫 번째 코드 줄을 대신 런타임에 열 수를 설정하는 2로 콤보 상자의 열 수를 설정, 당신은 또한 디자인 타임에이 설정을 구성 할 수 있습니다. 이를 달성하기 위해, 콤보 상자 컨트롤에서 마우스 오른쪽 단추로 클릭하고 속성을 클릭하고, 우리는 선언 2. 다음에 열 개수 속성을 설정하고 2 차원 배열을 초기화합니다. 마지막 코드 라인은 콤보 상자에 배열을 할당합니다.
우리는 지금 사용자 정의 폼의 첫 번째 부분을 만들었습니다. 이미 깔끔한 보이지만 우리는 사용자 정의 폼에 명령 단추를 클릭 할 때, 아무것도 아직 일어나지 않습니다.
(10)에서 프로젝트 탐색기, UserForm1을 두 번 클릭합니다.
-
두 번 확인 버튼을 클릭합니다.
-
다음 코드 줄을 추가합니다
Private Sub CommandButton1_Click() Unload Me MsgBox "You selected " & ComboBox1.Value On Error Resume Next MsgBox "You like " & ComboBox1.Column(1) & " movies" End Sub
참고 :이 코드 라인이 엑셀 VBA 사용자 정의 폼을 닫고 선택한 항목 및 장르를 표시합니다. 그 / 그녀의 자신의 영화에 사용자 채우기 (이 경우 가능한 장르가 없을 때) 문 ‘오류 재개 다음에’이 오류를 무시합니다.
-
더블 취소 버튼을 클릭합니다.
-
다음 코드 줄을 추가
Private Sub CommandButton2_Click() Unload Me End Sub
당신이 속도를 선택하고 확인을 클릭하면 결과.