回答編集履歴
1
a
answer
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
* 追記依頼に一回答えていただいた時点では、番号はランダムではなくむしろシャッフルです。
|
|
7
7
|
* シャッフル前提だと、番号は何らかの手法で生むしかない
|
|
8
|
-
→ここが一番今のネック。1番や2番のチームはデスクやパーティションで区切られたブースを表現しているはずだが、そこに何席配置するかは出勤社員総数によって変動する可能性がある。また200人もいるとなると6人席だとしても30チーム以上必要になる。とりあえずコードに配列でベタ書きしたが、上手く入れるイ
|
|
8
|
+
→ここが一番今のネック。1番や2番のチームはデスクやパーティションで区切られたブースを表現しているはずだが、そこに何席配置するかは出勤社員総数によって変動する可能性がある。また200人もいるとなると6人席だとしても30チーム以上必要になる。とりあえずコードに配列でベタ書きしたが、上手く入れるインターフェースが思いつかない(gasでは)。というか思い付く方法がどれもとても面倒。
|
|
9
9
|
* どのような方法だろうが、生み出してシャッフルするなら、チーム番号シートは無用の長物
|
|
10
10
|
* 手動実行しかない(なぜなら、200人の社員が今日(明日)何人出社するかは分からず、全員フォームに投稿したかどうかは、事前に判定できない。
|
|
11
11
|
→やり方として、シャッフルしたチーム番号シートをキューだと思えば都度送信できなくないが、数名が有給をとると、チーム番号キューに残存がでてしまい、有効な座席配置は望めない
|
|
@@ -16,9 +16,9 @@
|
|
|
16
16
|
```javascript
|
|
17
17
|
function setData(sheetname, toclear, dat, offsetR, offsetC) {
|
|
18
18
|
const name = sheetname || "リスト";
|
|
19
|
-
const
|
|
19
|
+
const shouldClear = toclear === undefined ? true : toclear;
|
|
20
20
|
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(name);
|
|
21
|
-
if(
|
|
21
|
+
if(shouldClear) { sheet.clear(); }
|
|
22
22
|
sheet.getRange(1 + offsetR, 1 + offsetC, dat.length, dat[0].length).setValues(dat);
|
|
23
23
|
}
|
|
24
24
|
function buildTeams() {
|