スクリプトエディタのリソースメニュー(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の最新記事】