ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 14308|回复: 5

[求助] 如何用Excel VBA解析JSON数据

[复制链接]

TA的精华主题

TA的得分主题

发表于 2015-9-8 00:45 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
如何把JSON数据转换成EXCEL格式的文档,便于财务人员做统计用,我自已尝试了几种方法,都无功而返,请各位过走路过的大侠们助我一臂之力,万分感谢!
JSON数据格式如下:
"search_result = [ {""sn"":""篮球"",""kz"":""birinxi"",""cp"":""baishi""} , {""sn"":""报龄"",""kz"":""kazet"",""py"":""baoling""} , {""sn"":""编简"",""kz"":""taryh"",""py"":""bianjian""} , {""sn"":""白兆灯"",""kz"":""tokا"",""py"":""biannianshi""} , {""sn"":""杠铃"",""kz"":""dop"",""py"":""bieshi""}];
//alert(1);
var   str_html = ""<table>"";
    if (search_result.length == 0 ) {
  str_html = ""<tr><td>抱歉,暂时没有结果 / /td><td></td></tr>"";
     } else {
    for(var k in kz7_dict_search_result){
    v = search_result[k];
    str_html += ""<tr><td>""+v.sn+""</td><td>""+v.kz+""</td><td>""+v.py+""</td></tr>"";
}
}
    str_html +=""<tr><td colspan='2'></td></tr></table>"";
   
     document.getElementById(""search_result_div"").innerHTML = str_html;"
这么个结果,怎么将 sn、kz、cp后面的值写入到excel三个列中
我测试的代码是以下,可还是运行不成
Sub t()
Dim a, y As Object, s, json
a = Sheets("Sheet2").Range("A1").Value
Set json = CreateObject("MSScriptControl.ScriptControl")
json.Language = "JScript"
s = json.eval("var" & a & ";s='';for(x in a){ for(y in a[x]){s+=a[x][y]+'\t';}s+='\r'}")
Debug.Print s
End Sub


TA的精华主题

TA的得分主题

发表于 2015-9-8 00:51 | 显示全部楼层
http://club.excelhome.net/thread-1228149-1-1.html
JSON 直写 Range,轻松完成格式转换。

TA的精华主题

TA的得分主题

发表于 2015-9-8 06:20 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2015-9-8 07:27 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
coby001 发表于 2015-9-8 00:51
http://club.excelhome.net/thread-1228149-1-1.html
JSON 直写 Range,轻松完成格式转换。

http://club.excelhome.net/forum.php?mod=redirect&goto=findpost&ptid=1228149&pid=8364134

示例~~

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-9-8 10:06 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 najagay 于 2015-9-8 10:29 编辑

首先,谢谢了,我忘了整理格式了!其二:
如果我处理的不只是A1,而是A列的所有数据时怎么办?假如,每个数组里面的数据不一定时,就很难办了


TA的精华主题

TA的得分主题

发表于 2015-9-8 10:51 | 显示全部楼层
najagay 发表于 2015-9-8 10:06
首先,谢谢了,我忘了整理格式了!其二:
如果我处理的不只是A1,而是A列的所有数据时怎么办?假如,每 ...

那些例子都是技术示范。
你理解后,自己动手动脑 ,根据自己的目的来改造。
哥只能帮你到这了~~
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-18 23:34 , Processed in 0.037724 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表