簡體   English   中英

GAS:用於電子郵件的SpreadSheet出錯

[英]GAS: Error on SpreadSheet for mailing

現在,我嘗試通過使用Google Apps腳本在電子表格上使用列表來發送電子郵件。

我按照以下方式進行編碼(實際上,只需將示例程序復制並粘貼到書上),但是發生了一個錯誤,即“ TypeError:無法調用null的方法“ getLastRow”。

  function sendMail() {
  var mySS = SpreadsheetApp.getActiveSpreadsheet();
  var mailSheet = mySS.getSheetByName("メール");  
  var addSheet = mySS.getSheetByName("住所録");
  var endRow = addSheet.getLastRow();
  var mySubject = mailSheet.getRange("C2").getValue();

  for (i = 2; i <= endRow; i++ ) {
    if (addSheet.getRange(i, 3).getValue()) {
      var myBody = addSheet.getRange(i, 1)
         .getValue() + "様¥n¥n";
      myBody = myBody + mailSheet.getRange("C3").getValue();
      var mailTo = addSheet.getRange(i, 2).getValue();
      GmailApp.sendEmail(mailTo, mySubject, myBody);
    }
  }
  Browser.msgBox("メール送信しました"); 
 }

抱歉,其中一些日語,但我創建了2個工作表,分別為“メール”和“住所錄”,然后輸入了數據。

有人可以幫我解決這個問題嗎?

您的電子表格沒有名為“住所錄”的工作表。

如果找不到工作表,則getSheetByName方法不會引發錯誤,它只會返回null

我認為問題在於您的工作表名稱為日語。 Google的服務器中腳本使用的編碼會有所不同。 因此,它將不返回任何紙張。 將工作表重命名為英語,它將起作用

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM