【发布时间】:2013-12-30 22:19:05
【问题描述】:
我的网页需要一个 JavaScript 方法来计算 Google 表格中有多少行(它用作表单的响应表格)。我一直在网上搜索有关如何将 Google 表格变成数据库的简单教程。
有没有更简单的方法?
我在 Google 脚本方面没有太多经验,但我所需要的只是一种可以使用 Ajax 或类似 JavaScript 方法读取电子表格的方法。
【问题讨论】:
标签: javascript google-sheets row
我的网页需要一个 JavaScript 方法来计算 Google 表格中有多少行(它用作表单的响应表格)。我一直在网上搜索有关如何将 Google 表格变成数据库的简单教程。
有没有更简单的方法?
我在 Google 脚本方面没有太多经验,但我所需要的只是一种可以使用 Ajax 或类似 JavaScript 方法读取电子表格的方法。
【问题讨论】:
标签: javascript google-sheets row
要检索 Google 电子表格中的行数,请使用以下命令:
var ss = SpreadsheetApp.openById("1qNCf0wKl................");
var sheet = ss.getSheetByName("sheet_name");
var number = sheet.getMaxRows().toString();
var number = number.replace(".0","");
Logger.log(number);
为了获得对电子表格的读取权限,以下链接中提供的指南就足够了:
Query Google Spreadsheet with URL Parameters
例如,如果您想在电子表格中获取所有带有 «budget» 字样的单元格,请使用以下脚本:
var id = "1qNCf0wKlx1RF......";
var column = "A";
var query = "budget";
var url = "https://docs.google.com/spreadsheets/d/"+id+"/gviz/tq?tq=SELECT%20*%20where%20"+column+"%20contains%20%22"+query+"%22";
var text = UrlFetchApp.fetch(url).getContentText().toString();
Logger.log(text);
为此,必须事先发布电子表格。在检索到 «budget» 行之后,必须对文本进行格式化,但这是另一个问题。
【讨论】:
你可以这样做
使用ContentService 编写一个简单的应用程序脚本,该脚本将返回包含电子表格中行数(以及您需要的任何其他信息)的 JSON。要获取行数,可以使用getLastRow()函数
将您的脚本发布为服务(网络应用程序)并从您的 JS 代码进行 AJAX 调用。
【讨论】: