スクリプトエディタのリソースメニュー(Google の拡張サービス)より API を実行可能にしておく必要があります。A に コースの ID、B にコース名、D にトピック ID、E にトピック名をセットします。
function listCourseAndTopic() {
// 選択したシートを対象とします
var spreadsheet = SpreadsheetApp.getActive();
// コースの一覧( 1つ以上あるという前提 )
var json = Classroom.Courses.list();
var cnt = json.courses.length;
var rowno = 0;
for( var i = 0; i < cnt; i++ ) {
var targetRange = spreadsheet.getRange('A' + (rowno + i + 1));
targetRange.setValue(json.courses[i].id);
targetRange = spreadsheet.getRange('B' + (rowno + i + 1));
targetRange.setValue(json.courses[i].name);
// トピックが無い場合、jsonTopic は {} となります
jsonTopic = Classroom.Courses.Topics.list( json.courses[i].id );
try {
for ( var j = 0; j < jsonTopic.topic.length; j++ ) {
var targetRange = spreadsheet.getRange('D' + (rowno + i + 1));
targetRange.setValue(jsonTopic.topic[j].topicId);
targetRange = spreadsheet.getRange('E' + (rowno + i + 1));
targetRange.setValue(jsonTopic.topic[j].name);
rowno++;
}
// トピックがあった場合一行空ける為にコメント
// rowno--;
}
catch(e){
// トピック無しでエラーの為ここで一行空けます
rowno++;
}
}
}
|
|
【GASの最新記事】


A に コースの ID、B にコース名、D にトピック ID、E にトピック名をセットします。




