vba - 字典项未正确填充
问题描述
我对此一无所知。我有一个像下面这样的列表,可以随时使用。我希望能够创建一个数组或集合,以便我可以在循环中进一步使用它。
Xob::SISBTXTRPR-5298
Xob::SISBTXTRPR-5326
Xob::SISBTXTRPR-5327
Xob::SISBTXTRPR-5328
Yob::SISBTXTRPR-3999
Yob::SISBTXTRPR-4000
我试图创建一个如下所示的字典项,但输出不是我所期望的
While i <= iPuntedIssuesCount
If sRemovedStoriesForTaskTracker.Exists(Trim(JSONObj("contents")("puntedIssues")(i)("assigneeName"))) Then
sRemovedStoriesForTaskTracker(Trim(JSONObj("contents")("puntedIssues")(i)("assigneeName"))) = sRemovedStoriesForTaskTracker(Trim(JSONObj("contents")("puntedIssues")(i)("assigneeName"))) & " + " & JSONObj("contents")("puntedIssues")(i)("key")
Else
sRemovedStoriesForTaskTracker.Add key:=Trim(JSONObj("contents")("puntedIssues")(i)("assigneeName")), Item:=JSONObj("contents")("puntedIssues")(i)("key")
End If
i = i + 1
Wend
sRemovedStoriesForTaskTracker 是字典项。我得到的字典项目中的输出是这样的:
Xob::SISBTXTRPR-5298 + SISBTXTRPR-5326 + SISBTXTRPR-5327 + SISBTXTRPR-5328.
我希望字典像这样填充
Xob::SISBTXTRPR-5298
Xob::SISBTXTRPR-5326
Xob::SISBTXTRPR-5327
Xob::SISBTXTRPR-5328
解决方案
您没有显示您的源 JSON,或者您如何输出字典值,并且您发布的代码似乎与您所说的不匹配。
在任何情况下,如@Damian 所述,您发布的代码将从使用一些变量中受益匪浅。它是如此密集,很难跟随。
While i <= iPuntedIssuesCount
Set d = JSONObj("contents")("puntedIssues")(i)
k = Trim(d("assigneeName"))
v = d("key")
If dictRemoved.Exists(k) Then
dictRemoved(k) = dictRemoved(k) & " + " & v
Else
dictRemoved.Add k, v
End If
i = i + 1
Wend
推荐阅读
- android - 制作 Android 应用时在 Visual Studio 中引用错误
- php - 验证 UPS api 凭据的解决方案
- java - 使用 OAuth2.0 客户端凭据向 Azure Log Analytics Api 进行身份验证
- amazon-web-services - AWS 中的 Kubernetes 服务访问
- c# - 由 C# EF 核心调用时暂停的选择查询,MSSQL 管理工作室执行查询就好了。为什么?
- python - 如何使用复杂列表中的数字作为标题/如何仅打印与某个值匹配的列表的一部分
- socket.io - 我们可以使用 Angular 6 客户端套接字连接到 Erlang 套接字服务器吗?
- javascript - 如何制作不调整自身大小的div
- wordpress - 是否可以在不影响子主题的情况下父主题?
- php - 正则表达式:如果字符串不以字符开头