前提・実現したいこと
ここに質問の内容を詳しく書いてください。
Google SpreadsheetにGoogleメールから抽出した内容(複数メール)を行ごとに追加したいです。
■■な機能を実装中に以下のエラーメッセージが発生しました。
発生している問題・エラーメッセージ
範囲の行数には 1 以上を指定してください。(行 27、ファイル「コード」)
該当のソースコード
function searchContactMail() { /* Gmailから特定条件のスレッドを検索しメールを取り出す */ var strTerms = '(is:unread "Purchase Order 07/30")'; var myThreads = GmailApp.search(strTerms, 0, 30); //条件にマッチしたスレッドを取得 var myMsgs = GmailApp.getMessagesForThreads(myThreads); //スレッドからメールを取得する →二次元配列で格納 var valMsgs = []; /* 各メールから日時、送信元、件名、内容を取り出す*/ for(var i = 0;i < myMsgs.length;i++){ valMsgs[i] = []; valMsgs[i][0] = myMsgs[i][0].getDate(); valMsgs[i][1] = myMsgs[i][0].getFrom(); valMsgs[i][2] = myMsgs[i][0].getSubject(); valMsgs[i][3] = myMsgs[i][0].getPlainBody().slice(0,200); valMsgs[i][4] = myThreads[i].getPermalink(); /* スプレッドシートに出力 */ if(myMsgs.length>0){ var mySheet=SpreadsheetApp.getActiveSpreadsheet().getSheetByName('PO'); //シートを取得 var maxRow=mySheet.getDataRange().getLastRow(); //シートの使用範囲のうち最終行を取得 mySheet.getRange(maxRow+1,1,i,5).setValues(valMsgs);i+=valMsgs.length;//シートに取得したメッセージのデータを追加 } } }
試したこと
maxRow+1,1,i,5の数字を1以外で試してみましたがうまくいきません。
補足情報(FW/ツールのバージョンなど)
シート名のPOはPurchase Orderの略です。
あなたの回答
tips
プレビュー