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

回答編集履歴

2

修正

2021/07/01 09:30

投稿

退会済みユーザー
answer CHANGED
@@ -17,7 +17,6 @@
17
17
 
18
18
  // 1行目の文字列データを格納する。
19
19
  var headerRange = ss.getRange("AU1:AY1")
20
-
21
20
  var headerValues = headerRange.getValues()[0]
22
21
  // リストを変えた後の進捗状況文字列と同じ文字列の列数(0始まり)を探す
23
22
  var c = headerValues.indexOf(currentCell)
@@ -29,9 +28,6 @@
29
28
  var updateRange = ss.getRange(currentRow, c + headerRange.getColumn());
30
29
 
31
30
  // 更新日時の記入
32
- Logger.log(headerRange.getColumn())
33
- Logger.log( select.getColumn())
34
- Logger.log( currentColumn)
35
31
  if(currentRow > 1 && currentColumn === select.getColumn()) {
36
32
  if(currentCell) {
37
33
  updateRange.setValue(new Date());

1

修正

2021/07/01 09:30

投稿

退会済みユーザー
answer CHANGED
@@ -12,21 +12,27 @@
12
12
  var currentRow = ss.getActiveCell().getRow();
13
13
  var currentColumn = ss.getActiveCell().getColumn();
14
14
  var currentCell = ss.getActiveCell().getValue();
15
+
16
+ var select = ss.getRange("E:E") // ここに入力規則からの選択列を指定する。
17
+
18
+ // 1行目の文字列データを格納する。
19
+ var headerRange = ss.getRange("AU1:AY1")
20
+
21
+ var headerValues = headerRange.getValues()[0]
22
+ // リストを変えた後の進捗状況文字列と同じ文字列の列数(0始まり)を探す
23
+ var c = headerValues.indexOf(currentCell)
15
24
 
16
- // 1行目の文字列データを配列として格納する。
17
- var headers = ss.getRange("B1:F1").getValues()[0];
18
-
19
- // リストを変えた後の進捗状況文字列と同じ文字列の列数(0始まり)を探す
20
- var c = headers.indexOf(currentCell)
21
-
22
25
  // 見つからなかった場合(-1)は何もしない。
23
- if (c < 0) return;
26
+ if (c<0) return;
24
27
 
25
28
  //更新日時をいれる列を指定(B列以降)
26
- var updateRange = ss.getRange(currentRow, c+2);
29
+ var updateRange = ss.getRange(currentRow, c + headerRange.getColumn());
27
30
 
28
31
  // 更新日時の記入
32
+ Logger.log(headerRange.getColumn())
33
+ Logger.log( select.getColumn())
34
+ Logger.log( currentColumn)
29
- if(currentRow > 1 && currentColumn === 1) {
35
+ if(currentRow > 1 && currentColumn === select.getColumn()) {
30
36
  if(currentCell) {
31
37
  updateRange.setValue(new Date());
32
38
  }