将Gmail附件中的CSV导入Google表格

时间:2019-04-09 15:56:05

标签: javascript csv google-sheets

我希望将从特定电子邮件地址收到的最新电子邮件的CSV附件导入Google表格。

我已经使用了在此站点上找到的一系列解决方案,但似乎没有一个适合我。我正在从Gmail邮件中导入附件,所有导入到Google表格中的内容都是一堆奇怪的字符和问号。看起来好像它本身以另一种字体(而不是附件的内容)导入了电子邮件。

如果我用注释掉的替代方法切换了attachment.setContentType,那么什么也不会导入。

function importCSVFromGmail() {

var threads = GmailApp.search("from:EMAIL ADDRESS");
var messages = threads[0].getMessages();
var message = messages[messages.length - 1];
var attachment = message.getAttachments()[0];

// Is the attachment a CSV file

attachment.setContentType('text/csv'); 
//attachment.setContentTypeFromExtension();

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);
 }
}

实际结果如下:

�PNG

“ IHDR h *BĠW@ 1ࣨE。 o�$5���g�C} P $ @�E(�HU��

0 个答案:

没有答案