我有一系列申请人。该系列包括姓名,大学,年龄,日期等。
我想创建一个只包含Applicants集合中唯一名称的数组。
我想以某种方式创建一个使用Names作为键的新词典,因为键不能重复:
Dim z As Variant
Dim d As Object
Set d = CreateObject("Scripting.Dictionary")
For Each z In Applicants
d(z("Names")) = 1
Next
但我不知道这是否有效,因为我遇到了错误。我想在之后创建一个数组,在这种情况下将保存唯一键或名称。
答案 0 :(得分:0)
您需要在添加之前测试密钥是否存在,否则您将抛出错误。此外,您在Scripting.Dictionary中具有非唯一.Item
,可以存储同一记录中的单个或分隔字段。
For Each z In Applicants
if not d.exists(z("Names")) then
d.Add Key:=z("Names"), Item:=z("University") & "|" & z("Age") & "|" & z("Date")
end if
Next
我对z("Names")
不确定,但您没有提供足够的Applicants
信息来证明您的样本使用的内容。 .Item
。Split
。可以使用键检索,分隔符上的{{1}}函数将创建一个数组。