質問: body.match(regtitle)[0].replace('タイトル:', '').replace('\r', ''); // 同じメールを読み込まないように、メッセージを既読にする threads[i].markRead(); // それぞれの項目をセルを指定してスプレッドシートへ転記 sheet.getRange(row,1).setValue([title]); sheet2.getRange(row,3).setValue([title]); sheet.getRange(row,1).setValue([date]); sheet2.getRange(row,2).setValue([date]); row++ row2++ } } } ```
回答: なにか根本的に勘違いされてる気がします。 > > スプレッドシート関数で例えるとIMPORTRANGE関数のようなものと認識している > > > 全然違います。 `SpreadsheetApp.setActiveSheet`はあくまでアクティブなシートを変更するだけでデータを読み込む機能はありません。データの読み込みにアクティブかどうかは関係ありません。 そもそもの話として、`SpreadsheetApp.setActiveSheet`を呼び出す必要もなさそうです。 ``` //var objSheet = objSpreadsheet.getSheetByName("シート1"); //var objSheet2 = objSpreadsheet2.getSheetByName("ファイル"); //var sheet = SpreadsheetApp.setActiveSheet(objSheet); //var sheet2 = SpreadsheetApp.setActiveSheet(objSheet2); var sheet = objSpreadsheet.getSheetByName("シート1"); var sheet = objSpreadsheet2.getSheetByName("ファイル"); ```