在函数中创建字典并在子中使用它

古兹曼的艾琳·奥尔蒂斯

我正在尝试在子中使用的函数中创建字典,但出现错误

“未定义用户定义类型”。

我不知道这是否很明显,但我看不出有什么问题。

我已经简化了代码以制作一个简单的代码:

Public Function create_dic(ByVal var As String) As Dictionary

   my_dic.CompareMode = vbTextCompare

   If var = "test" Then
       my_dic.Add Key:="var 1", Item:=1
   Else
       my_dic.Add Key:="var 2", Item:=2
   End If

   Set create_dic = my_dic
            
End Function
    

Sub prueba()
    Set respuesta = create_dic("test")
End Sub
Pᴇʜ

您是否设置了对“Microsoft Scripting Runtime”的引用?Dictionary不是标准 VBA 的一部分,需要该库。请参阅VBA 字典参考

此外,当您使用my_dic.CompareMode它时,它还不存在。确保正确使用Option Explicit和声明所有变量。此外,您需要先创建一个新的字典对象,然后才能使用它。

Option Explicit

Public Function create_dic(ByVal var As String) As Dictionary
   Dim my_dic As Dictionary  ' declare variable type
   Set my_dic = New Dictionary  ' create a new dictionary object

   my_dic.CompareMode = vbTextCompare

   If var = "test" Then
       my_dic.Add Key:="var 1", Item:=1
   Else
       my_dic.Add Key:="var 2", Item:=2
   End If

   Set create_dic = my_dic
            
End Function
    

Public Sub prueba()
    Dim respuesta As Dictionary  ' declare variable type
    Set respuesta = create_dic("test")
End Sub

有关字典的更多信息,这是一个很好的参考:Excel VBA 字典 - 完整指南

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在函数中创建数组,并在另一个函数中使用它

在函数中创建动态数组(calloc),并在main中使用它

在Python中创建2D c_types数组并在C函数中使用它

在函数中打开文件并在main中使用它

在构造函数中创建一个字符串数组并在主函数中使用它

通过 html 按钮创建变量并在外部函数中使用它

在 Google 脚本函数中读取单元格并在函数 #inception 中使用它

SQL查询:遍历表中的值并在子查询中使用它们

从 Postgres 中的子查询构造值的 ARRAY 并在 WHERE 子句中使用它

获取子元素的属性的值并在纯CSS3中使用它?

如何创建签名证书并在生产中的IdentityServer4中使用它?

如何在oracle sql脚本中创建过程并在脚本中使用它?

如何在代码中创建自定义UIButton并在xib中使用它?

C ++,Gnuplot:在RAM中创建临时文件并在Gnuplot中使用它

在函数中返回struct的值,并在另一个包中使用它

如何从json文件中读取值并在MATLAB plot函数中使用它?

是否可以将ID名称分配给变量并在javascript中的函数中使用它

如何在C ++中的类外部定义lambda函数并在类中使用它?

覆盖函数中的PHP变量并在另一个文件中使用它

如何从父类构造函数中获取变量并在子类中使用它?

如何从 python 函数中检索数据并在 emr 运算符中使用它

如何创建一次p元素函数并在每个函数中使用它在屏幕上打印

如何创建对象并在Objective-C中使用它?

如何创建服务并在控制器中使用它

JavaScript:异步创建实例并在不同模块中使用它

创建全局CheckBox并在方法中使用它时出错

创建自己的异常并在C#中使用它

创建我的模型Jobs的DropDownList并在CreateEmployeesViewModel中使用它

添加状态并在反应组件函数中使用它们