質問するログイン新規登録

質問編集履歴

5

写真を削除しました

2021/05/18 01:29

投稿

Kazuya_s
Kazuya_s

スコア3

title CHANGED
File without changes
body CHANGED
@@ -128,6 +128,4 @@
128
128
  F列はAグループの57個のIDがあります
129
129
  G列はBグループの53個のIDがあります
130
130
 
131
- したがいまして、F列はAグループから、G列はBグループからIDを検索した方がスピードアップできそうなイメージはあったのですが、どうして良いのかわからなかったので、AグループとBグループのIDをまとめてA列に並べて、A列1列のみのIDシート(classidsh)を現在は利用しています。
131
+ したがいまして、F列はAグループから、G列はBグループからIDを検索した方がスピードアップできそうなイメージはあったのですが、どうして良いのかわからなかったので、AグループとBグループのIDをまとめてA列に並べて、A列1列のみのIDシート(classidsh)を現在は利用しています。
132
-
133
- ![イ![イメージ説明](fcb75b82858fee60e758cb312428d52b.png)(44af2c0fb2abfb9cae91ee9fe032e348.png)

4

エラーの内容を追記しました

2021/05/18 01:29

投稿

Kazuya_s
Kazuya_s

スコア3

title CHANGED
File without changes
body CHANGED
@@ -99,8 +99,26 @@
99
99
  ```
100
100
  2021/5/6 09:24 追記
101
101
  5/4の夜はデータがすべてのシートに書き出されている様子でしたが、5/5の夜は全部コピーできていない様子でした。
102
+ スクリプトのエラーが出ていたのでそちらも載せます
103
+ 起動
104
+ 21/05/04 23:21
102
105
 
106
+ 関数
107
+ myFunction
103
108
 
109
+ エラー メッセージ
110
+ 同時呼び出しの数が多すぎます: スプレッドシート
111
+
112
+ トリガー
113
+ time-based
114
+
115
+ End
116
+ 21/05/04 23:33
117
+
118
+ トリガーで動き出してから、すぐにエラーが出ているので、私が書き足した部分が問題になっているのではないかと思います。ただ、5/4の夜はこのスクリプトで問題なく動きましたが、5/5の夜はダメでした
119
+
120
+ 確認していただけるとありがたいです
121
+
104
122
  2021/5/3 08:57追記
105
123
  元データと呼んでいるデータは以下のようなスタイルで、A列からE列まではGoogleフォームでの回答結果です。
106
124
 

3

2箇所にスクリプトの追加をしました。マスターデータの保管シートにすべてのデータをコピー。1日の終わりにフォームの回答を削除してリフレッシュ。

2021/05/06 00:36

投稿

Kazuya_s
Kazuya_s

スコア3

title CHANGED
File without changes
body CHANGED
@@ -50,6 +50,14 @@
50
50
  var _lastRow = sh.getLastRow();
51
51
  var data = sh.getRange(2,1,_lastRow,7).getValues();
52
52
 
53
+
54
+ //以下の4行をマスターデータの保管用として挿入しました(5/4)
55
+ var copymasterdata = sh.getRange(2,1,_lastRow,5).getValues();
56
+ var copymastersh = ss.getSheetByName('マスターデータ保管');
57
+ var _lastRowmasterPlus1 = copymastersh.getLastRow()+1;
58
+
59
+ copymastersh.getRange(_lastRowmasterPlus1,1,copymasterdata.length,5).setValues(copymasterdata);
60
+
53
61
  var classidsh = ss.getSheetByName('キーとなる別シートのID');
54
62
  var classiddata = classidsh.getDataRange().getValues();
55
63
 
@@ -71,9 +79,28 @@
71
79
  var copy_lastRowPlus1 = copysh.getLastRow()+1;
72
80
  }
73
81
  }
82
+
83
+ //以下の7行をコピー終了後に1日で回収したデータを削除して、また翌日分を改めてデータ回収するように削除のスクリプトと、埋め込み関数のスクリプトを挿入しました(5/4)
84
+ //Logger.log(_lastRow);
85
+ sh.deleteRows(2,_lastRow-1);
86
+
87
+ //二次元配列に埋め込む関数をセット
88
+ var formformula = [
89
+ [
90
+ `=arrayformula(vlookup(B2:B,'名簿'!A:J,10,0))`,
91
+ `=arrayformula(vlookup(B2:B,'名簿'!A:K,11,0))`
92
+ ]
93
+ ];
94
+
95
+ //関数を埋め込む
96
+ sh.getRange(2,6,1,2).setValues(formformula);
97
+
74
98
  }
75
99
  ```
100
+ 2021/5/6 09:24 追記
101
+ 5/4の夜はデータがすべてのシートに書き出されている様子でしたが、5/5の夜は全部コピーできていない様子でした。
76
102
 
103
+
77
104
  2021/5/3 08:57追記
78
105
  元データと呼んでいるデータは以下のようなスタイルで、A列からE列まではGoogleフォームでの回答結果です。
79
106
 

2

元データとなる写真を追加し、少し追記を加えました

2021/05/06 00:30

投稿

Kazuya_s
Kazuya_s

スコア3

title CHANGED
File without changes
body CHANGED
@@ -72,4 +72,17 @@
72
72
  }
73
73
  }
74
74
  }
75
- ```
75
+ ```
76
+
77
+ 2021/5/3 08:57追記
78
+ 元データと呼んでいるデータは以下のようなスタイルで、A列からE列まではGoogleフォームでの回答結果です。
79
+
80
+ F列とG列には、別シートからarrayformula(vlookup)という関数が2行目に入っており、回答がされていくと同時に所属するシートIDが割り当てられるようにしてあります
81
+
82
+ F列とG列は重複しないそれぞれのグループからのIDが割り当てられています
83
+ F列はAグループの57個のIDがあります
84
+ G列はBグループの53個のIDがあります
85
+
86
+ したがいまして、F列はAグループから、G列はBグループからIDを検索した方がスピードアップできそうなイメージはあったのですが、どうして良いのかわからなかったので、AグループとBグループのIDをまとめてA列に並べて、A列1列のみのIDシート(classidsh)を現在は利用しています。
87
+
88
+ ![イ![イメージ説明](fcb75b82858fee60e758cb312428d52b.png)(44af2c0fb2abfb9cae91ee9fe032e348.png)

1

pushの記述がなかったので追加しました

2021/05/02 23:59

投稿

Kazuya_s
Kazuya_s

スコア3

title CHANGED
File without changes
body CHANGED
@@ -61,7 +61,8 @@
61
61
  var copydata = [];
62
62
  for (var j = 0 ; j < data.length ; j++){
63
63
  if(data[j][5] == classid){
64
-
64
+     copydata.push(data[j])
65
+
65
66
  Logger.log(data[j]);
66
67
  Logger.log(copydata);
67
68