我剛剛在VBA中編程,我嘗試使用Excel工作表中的列表驗證數據。問題是每次從下拉列表中選擇不同的標準時,列表的大小都會有所不同。在VBA中使用動態列表驗證
例如:當我選擇中國時,列表變成10個不同的賣家。範圍A1到A10,但是當我選擇日本時,我只有5個賣家,從A1到A5。
所以我需要一個新的範圍在Formula1部分每次。
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$Z$1:$Z$30"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
什麼是最好的方法來做到這一點?
我知道如果我離開一個固定的範圍它可以工作,但它看起來不好,因爲它留下了很多空的空間,它看起來不整齊。
我希望這是可以理解的。
我相信你的答案完美無瑕,但它爲我提高:) – Pietro 2013-04-24 20:15:11
沒問題。這種方法唯一可以做到的,其他人不能做的是,它允許你的範圍在任何地方包含空白單元格。其他方法*要求*範圍在第一個空白單元處結束。如果這是你的問題的程度,那麼其他答案是完全可以接受的。乾杯! – 2013-04-24 20:18:05
在我的情況下,我不會遇到這個問題,但我會爲您的未來留下您的想法。 Thnx再次。 – Pietro 2013-04-24 20:41:32