Я пытаюсь импортировать несколько файлов csv в один лист. Каждый файл csv (Fil) содержит только одно число: 1234,00. Ничего больше.Импорт нескольких файлов csv в один лист
Номера должны быть импортированы в несколько разных столбцов (columnFil). Каждая партия файлов csv должна быть импортирована в одну строку.
Проблема в том, что я не могу получить несколько файлов csv в одной строке. Итак, я попытался использовать get- и setValue, но почему-то Google Script несовместим при выполнении этой части?
function Daily() {
var Fil = [121,122,123];
var columnFil = ["C","D","E"];
for (var count = 0; count < 3; count++){
Logger.log(count);
var tab = "2015";
var sh = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(tab);
var fSource = DriveApp.getFolderById('123467890');
var fi = fSource.getFilesByName(Fil[count]+".csv");
var ss = SpreadsheetApp.openById('0987654321');
if (fi.hasNext()) {
var file = fi.next();
var csv = file.getBlob().getDataAsString();
var csvData = CSVToArray(csv); // see below for CSVToArray function
// loop through csv data array and insert (append) as rows into 'NEWDATA' sheet
for (var i=0, lenCsv=csvData.length; i<lenCsv; i++) {
var rangeToBeMoved = sh.getRange(i+1, 1, 1, csvData[i].length);
var values = rangeToBeMoved.csvData;
sh.appendRow(csvData[i]);
}
}
var Avals = sh.getRange(tab+"!A1:A").getValues();
var Alast = Avals.filter(String).length; // get last cell
var month = "=Month(A"+Alast+")";
Logger.log(Alast);
var csvData = sh.getRange(tab+"!A"+Alast).getValue();
sh.getRange(tab+"!"+columnFil[count]+Alast).setValue(csvData);
var clear = sh.getRange(tab+"!A"+Alast);
clear.clearContent();
}
sh.getRange(tab+"!A"+Alast).setValue(datum);
sh.getRange(tab+"!B"+Alast).setValue(month);
}
Отметим, что CSVToArray (CSV) является известной функцией от: http://www.bennadel.com/blog/1504-Ask-Ben-Parsing-CSV-Strings-With-Javascript-Exec-Regular-Expression-Command.htm