使用Google脚本按NAME将CSV数据导入Google工作表-错误工作表未定义

gywdnpxw  于 2022-12-06  发布在  Go
关注(0)|答案(1)|浏览(97)

请帮助-我正试图创建一个谷歌脚本,我可以自动有一个csv文件,每天通过电子邮件发送给我导入到谷歌表的名称,这样我就可以写另一个脚本,有一个不同的csv文件从不同的日常电子邮件导入到同一个活动的谷歌表的不同名称(即在同一Google Active Sheet中有2个不同名称的2个不同工作表)。
下面是我的代码,但它给了我ReferenceError:没有为第8行定义工作表

function importCSVFromGmail() {

  var threads = GmailApp.search("Your Aesop Report is Ready (FC Employee Assignment & Demographic)"); // enter search criteria here
  var message = threads[0].getMessages()[0];
  var attachment = message.getAttachments()[0];

  var sheet = SpreadsheetApp.getActiveSpreadsheet(); // runs in the current active sheet
  var sheet1 = Sheet.getSheetByName('FC Employee Assignment & Demographic');
  var csvData = Utilities.parseCsv(attachment.getDataAsString(), ",");

    sheet.clearContents().clearFormats(); // clears target sheet
    sheet1.getRange(1, 1, csvData.length, csvData[0].length).setValues(csvData);
    GmailApp.markMessagesRead
}
gk7wooem

gk7wooem1#

试试这个:

function importCSVFromGmail() {
  var threads = GmailApp.search("Your Aesop Report is Ready (FC Employee Assignment & Demographic)");
  var message = threads[0].getMessages()[0];
  var attachment = message.getAttachments()[0];
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet1 = ss.getSheetByName('FC Employee Assignment & Demographic');
  var csvData = Utilities.parseCsv(attachment.copyBlob().getDataAsString(), ",");
  sheet1.clearContents().clearFormats(); 
  sheet1.getRange(1, 1, csvData.length, csvData[0].length).setValues(csvData);
  GmailApp.markMessagesRead(threads[0].getMessages()[0]);
}

相关问题