【问题标题】:Import JSON data into google sheets as a table将 JSON 数据作为表格导入谷歌表格
【发布时间】:2016-01-04 21:21:36
【问题描述】:

有没有办法使用 importJSON() 来导入这里的数据

http://stats.nba.com/js/data/sportvu/2015/drivesData.json

作为带有格式化行和带有标题的列的表格进入 Google 工作表?

目前,当我使用以下内容时,整个数据都会发布到一个单元格中;

=importJSON("http://stats.nba.com/js/data/sportvu/2015/drivesData.json","/resultSets/headers,/resultSets/rowSet","noTruncate,noInherit")

【问题讨论】:

    标签: json google-sheets


    【解决方案1】:

    我几乎可以肯定它可以通过脚本来完成。但这里有公式的解决方案。


    一个大公式

    将您的导入公式粘贴到单元格 A1:=importJSON(...)。然后将这个公式粘贴到单元格 A4 中:

    ={SPLIT(A2,",",0);ARRAYFORMULA(HLOOKUP(ArrayFormula(COLUMN(OFFSET(A1,,,counta(SPLIT(substitute(B2,",,",",-,"),",",0))/COUNTA(SPLIT(A2,",",0)),COUNTA(SPLIT(A2,",",0))))+(row(OFFSET(A1,,,counta(SPLIT(substitute(B2,",,",",-,"),",",0))/COUNTA(SPLIT(A2,",",0))))-1)*counta(SPLIT($A$2,",",0))),{ArrayFormula(COLUMN(OFFSET(A1,,,1,counta(split(substitute(B2,",,",",-,"),",",0)))));SPLIT(substitute(B2,",,",",-,"),",",0)},2,0))}
    

    它又大又重。有一种方法可以简化它。


    分步公式

    这是完成相同任务的公式列表。

    • A1 -- 你的公式
    • B3 -- =substitute(B2,",,",",-,")
    • B4 -- =counta(SPLIT(B3,",",0))
    • B5 -- =COUNTA(SPLIT(A2,",",0))
    • A7 -- 最终公式

    它会生成表格:

    ={SPLIT(A2,",",0) ;ARRAYFORMULA(HLOOKUP(ArrayFormula(COLUMN(OFFSET(A1,,,B4/B5,COUNTA(SPLIT(A2,",",0))))+(row(OFFSET(A1,,,B4/B5))-1)*counta(SPLIT($A$2,",",0))),{ArrayFormula(COLUMN(OFFSET(A1,,,1,B4)));SPLIT(B3,",",0)},2,0))}
    

    好的,它有效,不是太快,但确实有效。看sample workbook

    【讨论】:

    • 我终于有机会看到这个了,效果很好!感谢您抽出宝贵时间帮我调查这个问题,Max!
    猜你喜欢
    • 1970-01-01
    • 2023-01-04
    • 2021-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多