moveActiveSheet is not a function
「TypeError: newSheet.moveActiveSheet is not a function」
のエラーが発生しました。
ピンポイント過ぎてあまり遭遇しないエラーかもしれませんw
「newSheet」は私が命名した変数です。
その変数に対して「moveActiveSheet は関数ではありません。」
というエラー内容みたいです。
エラーが発生したコード
1 2 3 4 5 6 7 8 9 |
// スプレッドシートを読み込む let mySheet = SpreadsheetApp.getActiveSpreadsheet(); // スプレッドシートに新しいシートを追加挿入 let newSheet = mySheet.insertSheet(); // 新しく追加したシートを先頭に移動 newSheet.moveActiveSheet(1); |
原因と修正
エラーが発生したのは以下の部分です。
1 2 |
// 新しく追加したシートを先頭に移動 newSheet.moveActiveSheet(1); |
しかし実際の原因は↓になります。
1 2 |
// スプレッドシートに新しいシートを追加挿入 let newSheet = mySheet.insertSheet(); |
「スプレッドシート」に対して「moveActiveSheet」を行わないといけないのに
「シート」に対して「moveActiveSheet」を行っていました。
×:newSheet.moveActiveSheet(1);
〇:mySheet.moveActiveSheet(1);
コードを↓へ修正することでエラーが解消されます。
1 2 3 4 5 6 7 8 9 |
// スプレッドシートを読み込む let mySheet = SpreadsheetApp.getActiveSpreadsheet(); // スプレッドシートに新しいシートを追加挿入 let newSheet = mySheet.insertSheet(); // 新しく追加したシートを先頭に移動 mySheet.moveActiveSheet(1); |
以上です。
最後までお読みいただきありがとうございました!