返回列表 上一主題 發帖

[發問] ComboBox拉下選項問題

[發問] ComboBox拉下選項問題

我是初學的, 所以我參考這裡大大的帖子, 我參考了以下的程式, 但想知道為什麼要用 For...Next?

Private Sub UserForm_Activate()
                     
             Dim MyArray As Variant
            Dim Ctr As Integer
            MyArray = Array("1A", "2B", "3A")
            For Ctr = LBound(MyArray) To UBound(MyArray)
            UserForm2.ComboBox1.AddItem MyArray(Ctr)
     Next


     
            End Sub

本帖最後由 GBKEE 於 2014-8-5 09:17 編輯

回復 1# patrickccs
LBound,UBound 等函數可到VBA視窗的說明看看了解一下用法

LBound(MyArray),傳回MyArray這陣列元素的下限索引值 =0
UBound(MyArray),傳回MyArray這陣列元素的上限索引值=2
For Ctr 這迴圈, 會從 0 的 2 依序傳回
MyArray(0)="1A", MyArray(1)="2B", MyArray(2)="3A"
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 2# GBKEE 明白, 謝謝解答, 即是說, 在MyArray裡, 我增加多一些, 4A, 5A等等, UBound就會隨著MyArray有多少項而增加, 對嗎?

另外, 如果ComboBox的選項資料我不想自己設定, 而是從excel表欄A中所取得, 那我應該從哪個方向學, 要用哪一個command呢?

感謝!!!

TOP

回復 3# patrickccs
再多看看討論區的回覆文,對vba的用法可以多了解ㄧ些.
  1. Private Sub UserForm_Initialize() '表單初始化(未顯示前)的預設程式
  2.     ComboBox1.List = Sheets(1).[a1:a15].Value  '指定範圍
  3. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

        靜思自在 : 為自己找藉口的人永遠不會進步。
返回列表 上一主題