VBA를 사용하여 셀에 데이터 검증을 추가하는 방법
VBA를 사용하여 셀(가변수)에 "데이터 검증"을 추가하고 데이터 검증 목록에 포함될 범위도 가변적입니다.나는 지금까지 이것을 사용해 왔다.
여기서 "range1"은 데이터 유효성 검사 목록에 포함될 범위이며 "rng"는 데이터 유효성 검사를 원하는 셀입니다.
Dim range1, rng As range
Set range1 = range("a1:a5")
Set rng = range("b1")
With rng
With .Validation
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="range1"
End With
End With
"애플리케이션 정의 오류 및 객체 정의 오류"가 표시됨
또한 누가 나에게 다른 주장의 의미를 설명해 줄 수 있나요?
With .Validation
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="range1"
다음 항목 사용:
Dim ws As Worksheet
Dim range1 As Range, rng As Range
'change Sheet1 to suit
Set ws = ThisWorkbook.Worksheets("Sheet1")
Set range1 = ws.Range("A1:A5")
Set rng = ws.Range("B1")
With rng.Validation
.Delete 'delete previous validation
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _
Formula1:="='" & ws.Name & "'!" & range1.Address
End With
주의: 를 사용하고 있는 경우는,Dim range1, rng As range
,오직.rng
타입이 있다Range
,그렇지만range1
이Variant
그래서 쓰고 있어요.Dim range1 As Range, rng As Range
.
읽을 수 있는 파라미터의 의미에 대해서는 MSDN입니다.단, 다음과 같습니다.
Type:=xlValidateList
검증 유형을 의미합니다.이 경우 목록에서 값을 선택해야 합니다.AlertStyle:=xlValidAlertStop
는 검증 시 표시되는 메시지박스에 사용되는 아이콘을 지정합니다.사용자가 목록에서 벗어난 값을 입력하면 오류 메시지가 나타납니다.- 당신의 원래 코드로,
Operator:= xlBetween
이상하다.검증을 위해 두 가지 수식이 제공된 경우에만 사용할 수 있습니다. Formula1:="='" & ws.Name & "'!" & range1.Address
리스트 데이터 검증에서는 값이 포함된 리스트의 주소를 제공합니다(형식).=Sheet!A1:A5
)
언급URL : https://stackoverflow.com/questions/22956604/how-to-add-data-validation-to-a-cell-using-vba
'programing' 카테고리의 다른 글
이 유형의 CollectionView는 디스패처 스레드와 다른 스레드에서 SourceCollection으로의 변경을 지원하지 않습니다. (0) | 2023.04.12 |
---|---|
iPhone 앱에서 장치의 화면 해상도를 감지하는 방법 (0) | 2023.04.12 |
스토리보드에 식별자가 있는 뷰 컨트롤러가 없습니다. (0) | 2023.04.12 |
Bash: 무한 절전(무한 차단) (0) | 2023.04.12 |
Git을 사용하여 한 브랜치에 있는 모든 커밋을 표시하지만 다른 브랜치에는 표시 안 함 (0) | 2023.04.12 |