前提・実現したいこと
Google Apps Scriptにおいて、単語テストのようなものを作りたいと考えているプログラミング初心者です。
スプレッドシートにある単語一覧表を複製し、そこから合格したものを消していくという風にしたいのですが、シートの複製がうまくできません。
発生している問題・エラーメッセージ
TypeError: Cannot read property 'getNumSheets' of null(行 4、ファイル「コード」)
というエラーが表示されます。
該当のソースコード
function Form() {
SpreadsheetApp.openById('本当はここも入力されています');//スプレッドシートを開く
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();//有効なスプレッドシートの取得
var n = spreadsheet.getNumSheets();//シート数の取得
var formersheet = spreadsheet.getSheets()[n-1].activate();//最後のシートの取得
var newsheet = formersheet.duplicateActiveSheet().renameActiveSheet(n+1);//新規シートの作成・コピー
var level = spreadsheet.getName();//ファイル名からレベルの取得
var form = FormApp.openById('本当はここも入力されています');//フォームを開く
form.setTitle(level+' 第'+n+'回英単語テスト');//タイトル
form.setDescription('以下の英単語の意味に該当する日本語を続く1~4の選択肢からそれぞれ選びなさい。なお、分からない場合は5の「分からない」にマークをすること。');//説明文
form.setConfirmationMessage('これでテストは終わりです。');//送信後
form.setIsQuiz(true);//テスト形式on
form.setShuffleQuestions(true);//問題シャッフルon
form.addMultipleChoiceItem().setTitle('問題文').setChoiceValues(['選択肢1','選択肢2','選択肢3','選択肢4','選択肢5']);//ラジオボタン式
}
※作成途中です
試したこと
ネット上の複数のサイトと見比べてみたのですが、これといって相違点が見当たらず、どこをどのように直せばよいのかわからないままです。
解決方法などご教示ください。宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/20 09:02
2020/03/20 09:04
2020/03/20 09:06