我有一个VBA函数,它应该将Dictionary作为参数:
Function ShowDict(Dict1 As Dictionary)
For Each x In Dict1
MsgBox (Dict1.Item(x))
Next
End Function
Run Code Online (Sandbox Code Playgroud)
我试图通过以下方式调用它:
Dim Dict As Dictionary
Set Dict = Dictionary
Dict.Add "Owner", "John"
Dict.Add "Employee", "Sam"
ShowDict (Dict)
Run Code Online (Sandbox Code Playgroud)
在定义词典之前,我确实从References中选择了Microsoft Scripting References.但是,当我尝试使用'Dict'作为参数调用函数时,我得到一个编译错误,声明' Argument not optional '.谁能帮我?
我有一个散列,其中每个键对应于它的频率:
hsh = {'a' => 2, 'b' => 3, 'c' => 1}
Run Code Online (Sandbox Code Playgroud)
我想分解成一个数组:
arr = ['a', 'a', 'b', 'b', 'b', 'c']
Run Code Online (Sandbox Code Playgroud)
我使用以下方法工作正常,但是有更好的方法吗?
arr = []
hsh.each do |x,y|
y.times do
arr << x
end
end
Run Code Online (Sandbox Code Playgroud)