簡體   English   中英

vba運行時的數組字典

[英]vba dictionary of arrays at the run time

如何創建數組字典? 我想存儲數據如下:

trainingdict.add empname , softskills(t1, t2, t3, t4) [為給定的emp訓練一系列軟件技能]

trainingdict.add empname , techskills(t1, t2, t3, t4) [為給定的emp訓練的一系列技術訓練]

現在我通過加入“;”加入他們的訓練與特定的emp聯系起來了 並使用“|” 將softskills(朝管道分隔符的左側)和techskills(朝向管道分隔符的右側)分隔如下:

trainingdict.add empname , t1;t2;t3;t4 | t1;t2;t3;t4

這是有效的,但需要額外的循環來分割分隔符並訪問值。

為什么不嘗試將變體添加為值?

set d= new dictionary
v = make_variant(x,y,z)
d.Add empname, v

這將作為:

d("employee")(0) 'x
d("employee")(1) ... 'y

一種方便地跟蹤正在發生的事情的方法是使用Type

Option Explicit

Type SkillType
    techskills() as string
    SoftSkills() as string
end type



sub test
Dim Temp as Skilltype
Dim Arr1()
Dim Arr2()
'... populate arrays
set Temp = new Skilltype
Temp.techskills=Arr1
Temp.Softskills=Arr2
'populate dictionary
set trainingdict(empname)=Temp
end sub

注意:未經測試,但這是很好的參考

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM