代码之家  ›  专栏  ›  技术社区  ›  mfaiz

从google docs表中提取信息

  •  0
  • mfaiz  · 技术社区  · 7 年前

    我试图从谷歌文档表中提取信息。

    文档中可能有多个表,我试图获取的是包含“平均值”值的表

    类型-----------数值

    最大值-----------0

    平均值--|-5

    其他信息-----|-

    3 回复  |  直到 7 年前
        1
  •  0
  •   Ed Nelson    7 年前

    如果你能提供一份电子表格样本,那会有所帮助,但我认为你需要这样的东西。假设平均值在A列,-5在B列。根据需要调整范围:

    =lookup("mean value",A1:A,B1:B) 
    

    或:

    =vlookup("mean value",A1:B6,2,false)
    
        2
  •  0
  •   Cooper    7 年前

    一个有助于进一步了解谷歌文档的工具

    I put them all in one place

        3
  •  0
  •   mfaiz    7 年前

    虽然Cooper的回答有助于分析文件,但出于这个问题的目的,我使用了以下内容:

    function extract(data){ 
    for (var j = 0; j < data.length; j++) {
            if (data[j][5] == 'application/vnd.google-apps.document') {
                try {
                    var test = DocumentApp.openById(data[j][1]).getBody()
                    var table1 = test.getTables()[0],table2 = test.getTables()[1]
    
                    for (var i = 0; i < table1.getNumRows(); i++) {data[j][i+9]=table1.getCell(i, 1).getText()}
    
                    for (var i = 1; i < table2.getNumRows(); i++) {
                        if (~table2.getCell(i, 0).getText().toLowerCase().indexOf('mean')) {
                            data[j][7] = table2.getCell(i, 1).getText();
                            break;
                        }
                    }
                } catch (e) {
                    continue;
                }
            }
        }
      return data
    }