Board logo

標題: vba 下拉清單內容的範圍 隨時會變更 如何改寫自動抓到全部 [打印本頁]

作者: user999    時間: 2011-10-6 15:00     標題: vba 下拉清單內容的範圍 隨時會變更 如何改寫自動抓到全部

其中  下拉清單內容的範圍
是隨時會變更 如一下a1:a9 下 a1-a20
要如何改寫自動抓到全部


Sub 制訂清單的內容()
    '下拉清單是屬Shape物件
    With Sheets("SHEET1").Shapes(1)  '如下拉清單是Shapes的第一個Item
        '.ControlFormat.ListFillRange = "SHEET1!A1:A9"  '下拉清單內容的範圍
        .ControlFormat.ListFillRange = "TEST"      '工作表範圍的定義名稱 也可以
    End With
End Sub
作者: GBKEE    時間: 2011-10-6 15:49

回復 1# user999
  1. Sub 制訂清單的內容()
  2.     '下拉清單是屬Shape物件
  3.     With Sheets("SHEET1")  '如下拉清單是Shapes的第一個Item
  4.          Ad = .Range(.[A1], .[A1].End(xlDown)).Address
  5.         .Shapes(1).ControlFormat.ListFillRange = Ad      '工作表範圍的定義名稱 也可以
  6.     End With
  7. End Sub
複製代碼

作者: user999    時間: 2011-10-27 14:49

回復 2# GBKEE


    受益良多感謝您的幫助
作者: Hsieh    時間: 2011-10-27 17:56

回復 3# user999

表單控制項的下拉選單不需要用到程式碼控制
利用動態範圍定義即可
[attach]8357[/attach]
作者: freeffly    時間: 2011-10-28 13:57

剛好在查這各問題有想過動態範圍定義
沒想到真的可以這樣做




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)