Javascript googlescriptconcat将数组分为几个数组
我正在努力完成以下任务:我有一个包含20个电子表格的文件夹,其中所有的数据表都具有相同的格式(相同的列)。我想循环遍历所有这些数据,收集数据,将其组合成一个大数组,并将其显示在电子表格上 但是,我正在努力组合阵列。在第一步中,我从最终工作表加载列标题。之后,我循环遍历所有文件(我有一个表,表ID存储在数组aFiles中),但我无法组合数组。我用Javascript googlescriptconcat将数组分为几个数组,javascript,arrays,database,google-apps-script,Javascript,Arrays,Database,Google Apps Script,我正在努力完成以下任务:我有一个包含20个电子表格的文件夹,其中所有的数据表都具有相同的格式(相同的列)。我想循环遍历所有这些数据,收集数据,将其组合成一个大数组,并将其显示在电子表格上 但是,我正在努力组合阵列。在第一步中,我从最终工作表加载列标题。之后,我循环遍历所有文件(我有一个表,表ID存储在数组aFiles中),但我无法组合数组。我用aData.concat试过了,但什么也没用 function getInformation(){ var ssZ = SpreadsheetApp.g
aData.concat
试过了,但什么也没用
function getInformation(){
var ssZ = SpreadsheetApp.getActiveSpreadsheet();
var sZu = ssZ.getSheetByName("Meldeeinheiten");
var aFiles = sZu.getDataRange().getValues();
var sDa = ssZ.getSheetByName("Data_komplett")
var aData = sDa.getRange(1, 1, 1, 15).getValues()
for (var iFile = 1; iFile<aFiles.length; iFile ++){
var org = aFiles[iFile][0];
var name = aFiles[iFile][1];
var id= aFiles[iFile][2];
var ssI = SpreadsheetApp.openById(id);
var sData = ssI.getSheetByName("Data");
var lRow = sData.getLastRow();
if (lRow >= 2){
var aNew =[];
aNew = sData.getRange(2, 1, sData.getLastRow(), 15).getValues();
aData.concat(aData,aNew);
}
}
var lDRow = sDa.getLastRow();
sDa.getRange(2, 1, lDRow , 15).clear()
var rng = sDa.getRange(1, 1, aData.length, 15);
rng.setValues(aData);
Logger.log(aData.length)
}
还有一个
有人知道我如何组合这些数据并创建“联合数据库”吗?问题:
不在适当的地方。它返回连接的数组
解决方案:
使用返回的数组:
aData = aData.concat(aData,aNew);
或者使用
我不得不为我糟糕的英语水平道歉。我不能理解你的问题。我能问一下吗?1.你能提供你期望的结果吗?2.下表中的“电子表格A”和“电子表格B”是什么?3.什么是“联合数据库”?
aData.concat(aData,aNew);
aData = aData.concat(aData,aNew);
const out = aFiles.flatMap(([org, name, id])=>
SpreadsheetApp.openById(id)
.getSheetByName('Data')
.getDataRange()//TODO Modify range according to last row
.getValues())