从google docs表中提取信息

时间:2017-08-01 08:47:32

标签: google-sheets google-docs google-spreadsheet-api google-docs-api

我正在尝试从google docs表中提取信息。

文档中可能有多个表,我想要获取的表是包含值'mean value'的表

然后我想从下一列的相应行中获取值:

类型----------- |值

最大------------ | 0

分钟------------- | -50

平均值 - | -5

其他信息----- | -

基准--------- | 0

所以我要找的结果是-5。然后我会将其存储在Google工作表中

3 个答案:

答案 0 :(得分:0)

如果你提供了一个示例电子表格会有所帮助,但我认为你想要这样的somrthing。它假定平均值在A列中,-5在B列中。根据需要调整范围:

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

或:

=vlookup("mean value",A1:B6,2,false)

答案 1 :(得分:0)

了解有关Google文档的更多信息的有用工具

这仍然是一项正在进行的工作,但可以帮助您更多地了解Google文档。我在侧栏中显示文档中的所有子项。对于表格,它还可以帮助您识别单元格并编辑其内容。我最近遇到了一些困难,提供了I put them all in one place所需的所有文件。

答案 2 :(得分:0)

虽然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
}

为了放入上下文,我已经有一个文件列表,代码循环遍历文档并输出第一个表(转置)和第二个表中的1个项目的信息。