我想使用vba修改excel中的JSON文件。
所以我有这个JSON文件
{
"root": [{
"STATUS_RESPONSE": {
"STATUS": {
"STATUS": {
"OWNER": "root",
}
},
"REQ_ID": "00000",
"RESULT": [{
"USER": {
"BUSINESS_ID": "A",
"USER_NUMBER": "45",
"LANGUAGE": "F",
}
},
{
"USER_SESSION": {
"USER_ID": "0000001009",
"HELP_URL": "http://google.com",
}
},
{
"USER_ACCESS": {
"SERVICES_ROLE": "true",
"JOURNALLING": "true",
}
}]
}
}]
}我只想修改"BUSINESS_ID“
然后,我可以使用以下命令导出到同一个JSON文件
Private Sub CommandButton2_Click()
Dim rng As Range, items As New Collection, myitem As New Dictionary, i As Integer, cell As Variant, myfile As String
Dim FSO As New FileSystemObject
Dim buss As String
Dim JsonTS As TextStream
Set rng = Range("A2")
Set JsonTS = FSO.OpenTextFile("test.json", ForReading)
JsonText = JsonTS.ReadAll
JsonTS.Close
Set JSON = ParseJson(JsonText)
JSON("root")(1)("STATUS_RESPONSE")("RESULT")(1)("USER")("BUSINESS_ID") = Sheets(1).Cells(2, 1).Value
buss = JSON("root")(1)("STATUS_RESPONSE")("RESULT")(1)("USER")("BUSINESS_ID")
myfile = "test.json"
Open myfile For Output As #1
Write #1, buss
Close #1
End Sub我可以编辑单元格,这将取代JSON文件,但它从上面的JSON文件中删除了整个结构。
如果我将业务id更改为C,就会得到类似于json文件中类似的内容:
"C"有没有办法只修改现有文件中我需要的东西,而不让其他东西消失?
发布于 2018-06-06 18:16:53
您应该导出整个JSON对象,而不仅仅是其中的一部分。
Write #1, JsonConverter.ConvertToJson(JSON, Whitespace:=2)https://stackoverflow.com/questions/50726467
复制相似问题