我理解對象添加到集合可以通過添加可變數量的對象來收集
Dim ItemList As Collection
Set ItemList = New Collection
Dim Item As New CItem
Set Shoe = New CItem
With Shoe
.Quantity
.IDNumber
.Description
End With
ItemList.Add Shoe
Set Bag = New CItem
With Bag
.Quantity
.IDNumber
.Description
End With
ItemList.Add Bag
做我就能夠調用的數據我想使用類似(成本= Bag.Quantity * 2)
但是我的問題是,我的項目列表將由用戶定義。有沒有辦法將可變數量的對象添加到集合中,並仍能夠通過項目名稱檢索單個數據?
例如,我給出的項目清單:鞋,箱包,太陽鏡,褲子
我想編寫一個for循環讀取下的類「項目」所有這些對象,但仍然能夠計算(xyz = Sunglasses.Quantity + Pants.Quantity - Bag.Quantity)。我試圖使用計數器,但它似乎只接受常量表達式。
這可能嗎?如果是這樣,我將不勝感激幫助找出如何做到這一點。
我不是在VBA OOP的專家,所以我m不知道名稱是否會被刪除,但是您可以創建一個Item類並定義一個Type屬性來執行此操作(除非您的項目彼此之間差別太大,然後可能會在屬性中變得混亂) – R3uK
[** 1 **](http://stackoverflow.com/a/19908375/2140173)和[** 2 **](http://stackoverflow.com/a/19379641/2140173)到ge你開始接口和OBA在VBA – 2015-07-21 10:18:36