【发布时间】:2021-02-05 13:25:20
【问题描述】:
我有以下脚本可以从我的电子邮件中导入 XLS 附件。
目前是导入到指定的sheet名中(下例为“xxxx”)。
我希望它根据脚本运行前一天导入工作表名称(因为它以 DD/MM/YY 格式报告前一天的数据)。
function ImportXLSFromGmail_Stats() {
var sheetName = "xxxx";
var threads = GmailApp.search("from:test@test.com subject:Email Subject");
var messages = threads[0].getMessages();
var message = messages[messages.length - 1];
var attachment = message.getAttachments()[0];
attachment.setContentTypeFromExtension();
var data = [];
(attachment.getContentType() == MimeType.MICROSOFT_EXCEL || attachment.getContentType() == MimeType.MICROSOFT_EXCEL_LEGACY)
var tempFile = Drive.Files.insert({title: "temp_Availability", mimeType: MimeType.GOOGLE_SHEETS}, attachment).id;
data = SpreadsheetApp.openById(tempFile).getSheets()[0].getDataRange().getValues();
Drive.Files.trash(tempFile);
if (data.length > 0) {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);
sheet.getRange(1, 1, data.length, data[0].length).setValues(data);
}
}
【问题讨论】:
标签: google-apps-script google-sheets google-drive-api