Google apps script 自动将报告名称更改为Google工作表中的当前日期
我需要一个小的改变,我有一个脚本,每天早上运行,将显示从csv到谷歌工作表文件的报告,我有工作。我唯一的问题是,对于报表名称,我希望工作表名称是每天的当前日期,而不是像我现在这样只是新的数据表名称,我希望将当前日期添加到工作表名称中 例如,在这一行中,var newsheet=ss.insertSheet(“NEWDATA”);我不想要新数据,我想要获取工作表名称的当前日期 图纸名称的示例Google apps script 自动将报告名称更改为Google工作表中的当前日期,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我需要一个小的改变,我有一个脚本,每天早上运行,将显示从csv到谷歌工作表文件的报告,我有工作。我唯一的问题是,对于报表名称,我希望工作表名称是每天的当前日期,而不是像我现在这样只是新的数据表名称,我希望将当前日期添加到工作表名称中 例如,在这一行中,var newsheet=ss.insertSheet(“NEWDATA”);我不想要新数据,我想要获取工作表名称的当前日期 图纸名称的示例 函数导入数据(){ var fSource=DriveApp.getFolderById(“0ByXeC
函数导入数据(){
var fSource=DriveApp.getFolderById(“0ByXeCX01JfKJN1dTNk1SRlQyb1k”);//报告\文件夹\ id=csv报告保存文件夹的id
var fi=fSource.getFilesByName('201707160600070685.csv');//最新报告文件
var ss=SpreadsheetApp.openById(“1t2ju4kwpjsnljk0loezohr9uqnnrvywwwi1nxowl4pu”);//data_sheet_id=保存要用新报表数据更新的数据的电子表格的id
如果(fi.hasNext()){//如果报告文件夹中存在“report.csv”文件,则继续
var file=fi.next();
var csv=file.getBlob().getDataAsString();
var csvData=CSVToArray(csv);//有关CSVToArray函数,请参见下文
var newsheet=ss.insertSheet(“NEWDATA”);//创建一个“NEWDATA”表来存储导入的数据
//循环浏览csv数据数组,并作为行插入(追加)到“NEWDATA”工作表中
对于(var i=0,lenCsv=csvData.length;i进行以下修改如何?使用new date()
检索当前日期。使用Utilities.formatDate]修改日期格式)
发件人:
致:
如果我误解了你的问题,我很抱歉。那个工人,非常感谢你的帮助,我非常感激。@Andresbrian29欢迎。也谢谢你。
function importData() {
var fSource = DriveApp.getFolderById("0ByXeCX01JfKJN1dTNk1SRlQyb1k"); // reports_folder_id = id of folder where csv reports are saved
var fi = fSource.getFilesByName('201707160600070685.csv'); // latest report file
var ss = SpreadsheetApp.openById("1T2JU4KwpJsnlJk0LOEZoHr9uqnNrVYwBWI1NxOwL4PU"); // data_sheet_id = id of spreadsheet that holds the data to be updated with new report data
if ( fi.hasNext() ) { // proceed if "report.csv" file exists in the reports folder
var file = fi.next();
var csv = file.getBlob().getDataAsString();
var csvData = CSVToArray(csv); // see below for CSVToArray function
var newsheet = ss.insertSheet("NEWDATA"); // create a 'NEWDATA' sheet to store imported data
// loop through csv data array and insert (append) as rows into 'NEWDATA' sheet
for ( var i=0, lenCsv=csvData.length; i<lenCsv; i++ ) {
newsheet.getRange(i+1, 1, 1, csvData[i].length).setValues(new Array(csvData[i]));
}
/*
** report data is now in 'NEWDATA' sheet in the spreadsheet - process it as needed,
** then delete 'NEWDATA' sheet using ss.deleteSheet(newsheet)
*/
// rename the report.csv file so it is not processed on next scheduled run
file.setName("report-"+(new Date().toString())+".csv");
}
};
var newsheet = ss.insertSheet("NEWDATA");
var sheetname = Utilities.formatDate(new Date(), Session.getScriptTimeZone(), "MM/dd/yyyy");
var newsheet = ss.insertSheet(sheetname);