Google apps script 如何根据数据高度的变化将范围设置为变量
下面的代码从文件夹中的多个文件中获取相同范围的数据。但是,它仅在满足条件时使用该范围内的数据。因此,每个文件返回的值高度不同 我放了一个???根据从每个文件收集的数据的高度,为每个循环指示需要写入数据的范围高度的位置Google apps script 如何根据数据高度的变化将范围设置为变量,google-apps-script,Google Apps Script,下面的代码从文件夹中的多个文件中获取相同范围的数据。但是,它仅在满足条件时使用该范围内的数据。因此,每个文件返回的值高度不同 我放了一个???根据从每个文件收集的数据的高度,为每个循环指示需要写入数据的范围高度的位置 function getAllData() { var folder = DocsList.getFolderById("folderid"); var contents = folder.getFiles(); Logger.log("file length: " + conte
function getAllData() {
var folder = DocsList.getFolderById("folderid");
var contents = folder.getFiles();
Logger.log("file length: " + contents.length);
var file;
var data;
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Base")
sheet.clearContents();
var numOfFiles = contents.length;
for (var i = 0; i < numOfFiles; i++) {
file = contents[i];
Logger.log("count: " + i);
var theFileType = file.getFileType();
Logger.log("theFileType: " + theFileType);
if (theFileType==DocsList.FileType.SPREADSHEET) {
var sheet2 = SpreadsheetApp.open(file).getSheetByName("Sheet 1");
var lastLine = sheet2.getLastRow();
var values = sheet2.getRange('A3:J').getValues();
var formulas = sheet2.getRange('A3:J').getFormulas();
var data = [];
for(var row = 0 ; row < (values).length ; row++){
var lastrow = sheet.getLastRow()+1;
if (values[row][0] != '') {
for(var col = 0 ; col < formulas[row].length ; col++){
if(formulas[row][col] != '')
{values[row][col] = formulas[row][col]};
data.push(values[row]);}
if(data.length > 0)
sheet.getRange(lastrow, 1, ???, data[0].length).setValues(data);
}
}
};
}}
函数getAllData(){
var folder=DocsList.getFolderById(“folderid”);
var contents=folder.getFiles();
Logger.log(“文件长度:“+contents.length”);
var文件;
var数据;
var sheet=SpreadsheetApp.getActiveSpreadsheet().getSheetByName(“基本”)
sheet.clearContents();
var numofiles=contents.length;
对于(var i=0;i在“?”中只有一个有效值,它是“data.length”,是否每次都要在循环中设置values()?构建所有数据然后同时输出不是更好吗?我不知道。。。这看起来像什么?放置
sheet.getRange(lastrow,1,?,data[0]。length)。设置值(data)代码>在
的之后并更改???用data.length.我来试一试。谢谢不行,它仍然使用数据的长度(表示列)而不是高度(行),因此它报告数据的预期高度是错误的。