1
시트 "OR"에 나열된 항목으로 채울 Excel 양식의 드롭 다운이 있습니다. 그러나이 동적 목록의 유일한 항목 만 필요합니다. & 다음 드롭 다운을 채 웁니다.VBA로 Excel 양식의 동적 드롭 다운 채우기
많은 블로그를 검색하여 Rowsource 속성으로 명명 된 범위를 제안했지만 내 목록에 중복 된 항목이 있습니다 &은 동적입니다.
시트 "OR"에 나열된 항목으로 채울 Excel 양식의 드롭 다운이 있습니다. 그러나이 동적 목록의 유일한 항목 만 필요합니다. & 다음 드롭 다운을 채 웁니다.VBA로 Excel 양식의 동적 드롭 다운 채우기
많은 블로그를 검색하여 Rowsource 속성으로 명명 된 범위를 제안했지만 내 목록에 중복 된 항목이 있습니다 &은 동적입니다.
당신은이 코드를 작성할 수 있습니다 A10와 D1의 콤보 :
Dim s As String, r As Integer, nr As Integer, wr, v
Set wr = Range("A1:A10")
nr = wr.Rows.Count
For r = 1 To nr
v = wr(r, 1)
If InStr(s, v & ",") = 0 Then
s = s & v & ","
End If
Next
s = Left(s, Len(s) - 1)
With Range("D1").Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:=s
End With
이 데이터 유효성 검사를 사용을, 나는 데이터가 A1에 가정합니다. 콤보 상자는 A1이 포함됩니다 : A10 고유 값
을 당신이 콤보 ActiveX 객체이 시도 선호하는 경우 :
Dim s As String, r As Integer, nr As Integer, wr, v
Set wr = Range("A1:A10")
nr = wr.Rows.Count
With ComboBox1
.Clear
For r = 1 To nr
v = wr(r, 1)
If InStr(s, v & ",") = 0 Then
s = s & v & ","
.AddItem (v)
End If
Next
End With
덕분에 친구를 ... 그러나 지정된 범위는 엑셀 및 액티브 X 콤보의 다른 시트에 나타납니다 다른 시트. 적절하게 활성화하는 방법은 무엇입니까? 도와주세요. –
범위와 콤보 앞에있는 시트를 참조하십시오 (wr = sheet1.range ("A1 : A10") 및 sheet1.ComboBox1을 설정). – CRondao
감사합니다. 그것은 운동했습니다. –