能否将Azure DevOps仓库分支中的JSON文件数据导入Excel表格?
从Azure DevOps仓库导入JSON数据到Excel的可行方案
当然可行,给你两个实用的解决办法:
方法一:用原始文件直链直接导入
你之前用的是仓库文件的网页URL,不是纯数据的直链,自然加载失败。换这个步骤来:
- 打开Azure DevOps仓库里的目标JSON文件,点击页面右上角的「Raw」(或「原始」)按钮,复制弹出的纯文本URL,这个就是能被Excel直接识别的直链
- 回到Excel,走「数据」→「获取数据」→「从Web」流程,粘贴这个原始URL,就能正常加载JSON数据了
方法二:用Power Query批量导入特定文件集
如果要一次性处理多个JSON文件,用Azure DevOps的REST API配合Power Query更高效:
- 先在Azure DevOps里生成个人访问令牌(PAT),权限只勾选「代码读取」就行,别开多余权限
- 打开Excel,新建空白查询:
- 点「数据」→「获取数据」→「从其他来源」→「空白查询」
- 进入Power Query编辑器,点击「高级编辑器」,把默认代码替换成下面的M代码,记得把占位信息改成你的实际内容:
let PAT = "你的个人访问令牌", Organization = "xxx", Project = "yyy", Repo = "yyy", Branch = "origin/master", FilePaths = {"/file1.json", "/file2.json"}, // 这里填你要批量导入的文件路径集合 ImportFiles = List.Transform(FilePaths, (FilePath) => let Url = "https://dev.azure.com/" & Organization & "/" & Project & "/_apis/git/repositories/" & Repo & "/items?path=" & Uri.EscapeDataString(FilePath) & "&versionDescriptor.version=" & Branch & "&api-version=7.1-preview.1&download=true", Headers = [Authorization = "Basic " & Binary.ToText(Text.ToBinary(":" & PAT), BinaryEncoding.Base64)], JsonData = Json.Document(Web.Contents(Url, [Headers=Headers])) in JsonData ), CombinedData = Table.Combine(List.Transform(ImportFiles, (Data) => Record.ToTable(Data))) // 可根据你的JSON结构调整数据合并方式 in CombinedData - 运行查询后,就能批量导入指定的JSON数据,还能设置自动刷新频率,跟上仓库文件的更新节奏
注意事项
- 个人访问令牌要妥善保存,别随便分享
- 如果你的JSON结构比较复杂,可能需要在Power Query里调整数据转换步骤,比如展开嵌套对象、拆分字段等
内容的提问来源于stack exchange,提问作者andyb952
相关产品推荐
相关产品推荐

