快速浏览我通常打扰别人的地方告诉我这里是提问的新地方!
我一直在创建一个脚本来创建从电子表格数据生成的文档,而这些文档又是从Google表单生成的。 (希望有意义......)
无论如何,我已经非常成功地进行了大量的搜索和帮助,但现在我想让我的脚本变得同质,所以当我想设置新的表单等时我不需要修补它。
我有来自Googles脚本教程的getRowData函数,但我没有从规范化的Headers中调用行数据,而是希望它们是通用的,即Column1,Column2等。
我已粘贴下面的教程功能,它将数据传递给另一个函数,该函数规范化标题以用作对象,我想我可以将它们设为通用但我不知道如何开始使用它...
非常感谢任何帮助!!
谢谢,
亚历
// getRowsData iterates row by row in the input range and returns an array of objects.
// Each object contains all the data for a given row, indexed by its normalized column name.
// Arguments:
// - sheet: the sheet object that contains the data to be processed
// - range: the exact range of cells where the data is stored
// - columnHeadersRowIndex: specifies the row number where the column names are stored.
// This argument is optional and it defaults to the row immediately above range;
// Returns an Array of objects.
function getRowsData(sheet, range, columnHeadersRowIndex) {
columnHeadersRowIndex = columnHeadersRowIndex || range.getRowIndex() - 1;
var numColumns = range.getEndColumn() - range.getColumn() + 1;
var headersRange = sheet.getRange(columnHeadersRowIndex, range.getColumn(), 1, numColumns);
var headers = headersRange.getValues()[0];
// Browser.msgBox(headers.toSource());
return getObjects(range.getValues(), normalizeHeaders(headers));
// return getObjects(range.getRowIndex);
}
答案 0 :(得分:1)
如果要使用索引获取列,为什么要将它们解析为对象?只需使用普通getValues
!
var values = sheet.getDataRange().getValues();
var row2 = values[1];
var cell_in_col4 = row2[3];
答案 1 :(得分:0)
看起来你错过了" var"在声明columnHeadersRowIndex变量时。