Я использовал следующую функцию для загрузки CSV-вложений в листы Google:
function importCSVFromGmail() {
var threads = GmailApp.search("from:cbuffone123@gmail.com");
var message = threads[0].getMessages()[0];
var attachment = message.getAttachments()[0];
// Is the attachment a CSV file
if (attachment.getContentType() === "text/csv") {
var sheet = SpreadsheetApp.getActiveSheet();
var csvData = Utilities.parseCsv(attachment.getDataAsString(), ",");
// Remember to clear the content of the sheet before importing new data
sheet.clearContents().clearFormats();
sheet.getRange(1, 1, csvData.length, csvData[0].length).setValues(csvData);
}
}
функция в настоящее время получает ЛЮБОЕ вложение, отправленное из этого письма. Я хотел бы изменить функцию так, чтобы она ТОЛЬКО выбирала вложения с именем «data.CSV» и игнорировала все остальные вложения. Есть ли способ сделать это?
Заранее спасибо!
поэтому я изменил это на:
function Exact_CSV_Import() {
var threads = GmailApp.search("from:cbuffone123@gmail.com");
var message = threads[0].getMessages()[0];
var attachment = message.getAttachments()[0];
for (var n = 0; n < attachment.length; n++) {
var attachmentName = attachments[n].getName();
if (attachmentName = "data1.csv")
{
// do stuff with "data1.csv"
attachment.setContentTypeFromExtension();
if (attachment.getContentType() === "text/csv") {
var sheet = SpreadsheetApp.getActiveSheet();
var csvData = Utilities.parseCsv(attachment.getDataAsString(), ",");
sheet.clearContents().clearFormats();
sheet.getRange(1, 1, csvData.length, csvData[0].length).setValues(csvData);
}
}
}
}
и, кажется, ничего не происходит. я не получаю никаких ошибок, но, похоже, ничего не делает?