如何在不编码的情况下将 JSON 文件导入 Excel?

Mos*_*ani 3 excel json powerquery

假设您有一个名为的文件input.json,其中包含以标准 JSON 格式定义的对象数组。就像是:

[
    {"name": "notebook", "price": 500.00, "rate": 4.2},
    {"name": "sd-card", "price": 60.49, "rate": 3.5}
]
Run Code Online (Sandbox Code Playgroud)

如何在没有 VBA 或脚本的情况下将其作为表格导入 Microsoft Excel 中?

Mos*_*ani 5

如果您在 Excel 中有 PowerQuery(我认为是 2010+),那么它非常简单明了。类似的场景也可用于覆盖更复杂的情况。只需按照以下步骤操作:

  • 在功能区栏上,选择: Data => Get Data => From File => From Json
  • 选择您的 Json 文件(本例中为 input.json)
  • 在打开的Power Query Editor窗口和功能区栏上,选择:View => Advanced Editor并输入:
let
    Source = Json.Document(File.Contents("input.json"))
in
    Table.FromList(Source, Record.FieldValues, {"name","price","rate"})
Run Code Online (Sandbox Code Playgroud)

或者,如果您想在不指定列名的情况下自动导入,请改用以下块:

let
    Source = Json.Document(File.Contents("input.json"))
in
    Table.FromList(Source, Record.FieldValues) 
Run Code Online (Sandbox Code Playgroud)

现在在功能区栏上选择:
Home => Close & Load
您将看到一个漂亮的导入表格,其中包含您喜欢的所有 Excel 功能。

  • 你没明白我的意思。`Source` 之后应该有一个包含 `Table.FromList()` 命令的步骤。然后是“in”。例如,“TheTable = Table.FromList(Source, Record.FieldValues)”后跟“in TheTable”。这就是惯例。 (2认同)