字典没有返回值的感谢vba中的一个键

我正在开发vba中的函数来创build和填充字典。

字典的关键字如下:

CATEGORY 1 CATEGORY 2 

当我尝试检索下面的代码的值,它不工作:

 Dim test As String test=mydico("CATEGORY 1") 

variablestesting是空的。

但是,我不明白,这是非常奇怪的是,用下面的代码:

 For Each Key In mydico.Keys() Dim test As String test = categoriesDico(key) Next 

当键等于“第一类”时,testing用适当的值填充,我不明白为什么把“类别1”或放一个键(与“类别1”的值)是相同的。

我知道这是旧的,但万一有人在这里像我find他们的方式…我有这个问题(即一个variables作为关键与手动input的string作为关键,为了从字典中检索一个值 – 一个工作,另一个没有 – 在我的情况下其他方式)我通过使用CStr函数,即确保键types存储和types我用来从字典中检索键的值是相同的,即

 dict("key1") = "value1" dict("key2") = "value2" 

等等

而关键字是stringtypes

如果我这样查找“key1”:

 result = dict("key1") result shows as "value1" 

现在让我们说我有

 var="key1" 

string/变体types,我想在字典中查找并检索相应的值。 如果我这样做:

 result = dict(var) result shows as blank 

我必须这样做

 result = dict(CStr(var)) 

那么我会像预期的那样将结果返回为“value1”