質問編集履歴

1

コードを記載しました

2022/07/04 08:27

投稿

kaguramiyabi
kaguramiyabi

スコア13

test CHANGED
File without changes
test CHANGED
@@ -3,6 +3,71 @@
3
3
  at GetGroupList(コード:59:57)
4
4
  と出てしまい途中までしかデータを取得できませんでした。
5
5
  https://dev.classmethod.jp/articles/g-suite-get-group-list/
6
+
7
+ ```ここに言語を入力
8
+ //スプレッドシートにメニューを追加
9
+ function onOpen() {
10
+ var ui = SpreadsheetApp.getUi();
11
+ var menu = ui.createMenu("グループ");
12
+ menu.addItem("グループ一覧取得", "GetGroupList");
13
+ menu.addToUi();
14
+ }
15
+
16
+ //取得グループのドメイン
17
+ var domainName = 'example.com';
18
+ //Groups: list の maxResults のデフォルトは200
19
+ var maxResults = 200;
20
+
21
+ //グループ一覧取得
22
+ function GetGroupList()
23
+ {
24
+ //アクティブなシートを取得する
25
+ var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
26
+ //シート初期化
27
+ ss.clear();
28
+
29
+ //スプレッドシートにセットするデータ
30
+ var values = [];
31
+ //ヘッダー追加
32
+ values.push(["グループ名", "説明", "メールアドレス", "メンバー数", "グループメンバー"]);
33
+
34
+ //グループ一覧の取得
35
+ var groupsList = AdminDirectory.Groups.list({domain: domainName, maxResults: maxResults});
36
+
37
+ if(groupsList) {
38
+ //データセット
39
+ for(var i = 0; i < groupsList.groups.length; i++){
40
+
41
+ var value = [];
42
+ //グループのデータをセット
43
+ value.push(groupsList.groups[i].name); //グループ名
44
+ value.push(groupsList.groups[i].description); //説明
45
+ value.push(groupsList.groups[i].email); //メールアドレス
46
+ value.push(groupsList.groups[i].directMembersCount); //メンバー数
47
+
48
+ //グループのメンバー情報の取得
49
+ var members = AdminDirectory.Members.list(groupsList.groups[i].email).members;
50
+
51
+ //メンバー処理
52
+ if (members) {
53
+ //メンバーデータをセット
54
+ var memberData = '';
55
+ for (var j = 0; j < members.length; j++){
56
+ memberData += members[j].email + ','; //カンマ区切りで
57
+ }
58
+ value.push(memberData);
59
+ }
60
+
61
+ //データ1行追加
62
+ values.push(value);
63
+
64
+ }
65
+
66
+ //スプレッドシートにデータをセット
67
+ ss.getRange(1, 1, groupsList.groups.length + 1 , 5).setValues(values);
68
+ }
69
+ }
70
+ ```
6
71
 
7
72
  過去にこのGASを利用して正常に取得できていたのですが本日実行した際にエラーとなってしまい取得できませんでした。
8
73