VBA – 드롭다운 목록(데이터 유효성 검사)
이 튜토리얼에서는 Excel VBA에서 데이터 유효성 검사를 사용하여 드롭다운 목록으로 작업하는 방법을 보여드립니다.
Excel 데이터 유효성 검사를 사용하면 셀이나 범위에 입력할 수 있는 값을 제한할 수 있습니다. 양수 정수, 텍스트, 날짜 등으로 항목을 제한할 수 있습니다. 이 튜토리얼에서는 VBA를 사용하여 셀에 데이터 유효성 검사 드롭다운 목록을 만드는 방법을 살펴보겠습니다.
참고: 데이터 유효성 검사 드롭다운 목록의 대안으로 ListBox 객체를 사용할 수 있습니다. ListBox는 Excel 워크시트에 추가할 수 있습니다. ListBox는 ListBox 값이 변경될 때마다 실행되는 매크로를 트리거할 수도 있습니다. ListBox는 VBA 사용자 정의 폼에서도 사용됩니다.
VBA를 사용하여 드롭다운 목록 만들기
A1 셀에 과일이라는 텍스트가 있고 A2 셀에 5개의 항목이 있는 드롭다운 목록을 만들겠습니다.
Validation.Add 메서드를 사용하고 Type 매개 변수를 xlValidateList로 지정합니다. Formula1 매개 변수를 사용하여 목록에 원하는 특정 항목을 추가할 수 있습니다.
다음 코드는 A2 셀에 데이터 유효성 검사 드롭다운 목록을 생성합니다:
Sub DropDownListinVBA()
Range("A2").Validation.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _
Formula1:="오렌지, 사과, 망고, 배, 복숭아"
End Sub
결과는 아래와 같습니다:
VBA에서 이름으로 정의된 범위를 이용하여 드롭다운 목록 채우기
항목을 포함하는 이름으로 정의된 범위를 사용하여 VBA에서 드롭다운 목록을 채울 수 있습니다. 아래와 같이 “동물”이라는 이름으로 정의된 범위가 있습니다:
명명된 범위와 동일한 Formula1 매개 변수를 설정해야 합니다. 다음 코드는 명명된 범위의 항목을 기반으로 셀 A7에 데이터 유효성 검사 드롭다운 목록을 만듭니다:
Sub PopulateFromANamedRange()
Range("A7").Validation.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _
Formula1:="=동물"
End Sub
결과는 아래와 같습니다:
드롭다운 목록 제거하기
Validation.Delete 메서드를 사용하여 셀에서 드롭다운 목록을 제거할 수 있습니다. 다음 코드는 위 예제에서 A7 셀에서 드롭다운 목록을 제거합니다:
Sub RemoveDropDownList()
Range("A7").Validation.Delete
End Sub
간편한 VBA 코딩
온라인에서 VBA 코드를 더 이상 검색하지 않아도 됩니다. 초보자도 최소한의 코딩 지식으로 프로시저를 처음부터 코딩할 수 있습니다. 시간 절약이 가능하고 모든 사용자를 위한 VBA 코드 작성기인 AutoMacro에 대해 자세히 알아보세요!