Excel中导出结构化数据为JSON或XML需借助Power Query、VBA宏、自定义M函数、调试工具或第三方加载项;各方法均支持标准格式生成与校验。

如果您在Excel中处理结构化数据,但需要将其转换为JSON或XML格式以便与其他系统交互,则需借助开发工具或外部辅助手段实现导出。以下是完成该任务的具体步骤:
一、使用Power Query导出为JSON格式
Power Query内置支持将表格数据转换为结构化文本,通过M语言可生成标准JSON字符串。此方法无需编写代码,仅依赖Excel原生功能。
1、选中目标数据区域,点击【数据】选项卡 → 【从表格/区域】,勾选“表包含标题”,点击确定。
2、在Power Query编辑器中,依次点击【文件】→【导出】→【导出到JSON】(若无此选项,则需升级至Microsoft 365最新版本)。
3、若导出选项不可用,可在查询设置窗格中右键当前查询 → 【高级编辑器】,将最后一步替换为:= Json.FromValue(#"上一步骤名称")。
4、点击【关闭并上载】,新工作表将显示JSON字符串;复制该单元格内容,粘贴至文本编辑器中保存为.json文件。
二、使用VBA宏导出为JSON格式
VBA可通过字典对象与字符串拼接方式构建合法JSON结构,适用于所有Excel桌面版(需启用开发者选项)。
1、按Alt + F11打开VBA编辑器,插入新模块,粘贴JSON序列化函数(如JsonConverter.bas库)。
2、返回Excel,按Alt + F8调出宏列表,运行自定义导出宏,选择输出范围与保存路径。
3、宏执行后将在指定位置生成文件,其内容符合RFC 8259标准,所有字符串字段均被双引号包裹,空值转为null,数字不加引号。
三、使用Power Query导出为XML格式
Power Query支持通过M函数Xml.Generate将表格映射为XML文档结构,可自定义根节点与子元素名称。
1、加载数据至Power Query编辑器后,点击【转换】→【格式】→【作为XML】(若未显示,先添加自定义列:= Xml.Generate([Record]))。
2、在高级编辑器中修改M代码,在源步骤后追加:= Xml.Generate(#"上一步骤名称", each [Row = _], "row", "data")。
3、点击【文件】→【导出】→【导出到XML】,指定XSD架构文件(可选),确认后生成标准XML文档。
四、使用开发者工具源映射功能设置
Excel本身不提供浏览器式“开发者工具源映射”功能;此处所指为在调试VBA或加载项时,将本地脚本文件与Office加载项中的运行时代码建立映射关系,便于追踪JSON/XML生成逻辑。
1、打开【文件】→【选项】→【高级】,勾选“启用开发者工具”和“启用加载项的调试模式”。
2、安装Microsoft Office Add-in Debugger扩展(Chrome或Edge),启动调试会话后,在Sources面板中右键 → 【Add folder to workspace】,选择VBA工程所在目录。
3、在调试器中设置断点于JSON序列化函数入口处,运行宏时可实时查看变量值变化,每行输出的JSON片段将高亮显示当前作用域内的键名与值类型。
五、使用第三方加载项直接导出
部分经微软认证的加载项(如“XLTools JSON Exporter”)提供一键导出界面,自动识别表头并生成嵌套结构。
1、访问AppSource商店搜索对应加载项,点击【添加】并授权权限。
2、在Excel中切换至【插入】→【我的加载项】,启动插件,选择数据区域与导出格式(JSON或XML)。
3、配置节点命名规则(如将列名“Product_ID”映射为XML中的










