Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在VBa中从集合中获取对象_Vba_Excel - Fatal编程技术网

如何在VBa中从集合中获取对象

如何在VBa中从集合中获取对象,vba,excel,Vba,Excel,我以前有以下工作代码 Set result = DecodeJson(MyRequest.responseText) Dim keys() As String keys = GetKeys(result.issues) 现在,我的方法已经改变了,结果不是对象,而是基于 我现在遇到的问题是,我不断遇到以下异常 运行时错误“424”: 所需对象 在监视窗口中检查,项显示为类型变量/字符串,其值为“[对象]” 我需要投下它吗?几周前我遇到了这个问题,问题如下: 已使用以下代码收集集合:coll

我以前有以下工作代码

Set result = DecodeJson(MyRequest.responseText)   
Dim keys() As String
keys = GetKeys(result.issues)
现在,我的方法已经改变了,结果不是对象,而是基于

我现在遇到的问题是,我不断遇到以下异常

运行时错误“424”:
所需对象

在监视窗口中检查,
显示为类型
变量/字符串
,其值为
“[对象]”


我需要投下它吗?

几周前我遇到了这个问题,问题如下:

已使用以下代码收集集合:
collection.Add(OBJECT)
然而,这会导致将对象的值添加到集合中,并且可以通过简单地保留parathesis来解决。
Collection.add Object
因此,我的建议是进入
GetAllJSonObjects(searchString)
函数并 搜索添加过程,并确保它没有重复。 像这样,集合将包含对象而不是变体,并且带有项(i+1)的代码应该可以正常工作


祝你好运

如果您返回的是一个对象,您需要使用
Set
Set item=resultsfromquerys.item(i+1)
Hi@Rory,遗憾的是,同样的问题仍然存在(我更新了我的帖子以显示它),如果您使用Set,它不能是字符串,那么它现在是什么对象类型?
resultsfromquerys
是一个
集合/集合<代码>设置项目
。。。由于上面的错误消息@RoryFrom,我认为您将在循环中得到一个溢出错误。尝试[对于resultsFromQueries.Count-1的i=0和[Set item=resultsFromQueries.item(i)]
Dim resultsFromQueries As Collection
Set resultsFromQueries = GetAllJSonObjects(searchString) ' this calls DecodeJson(MyRequest.responseText)  as per the code snippet above

Dim i As Integer
For i = 0 To resultsFromQueries.Count
    Dim keys() As String
    Dim item As Object
    Set item = resultsFromQueries.item(i + 1)  ' I guess it's not 0 based?
    keys = GetKeys(item.result.issues)   'KABOOM