回答編集履歴

6

修正

2019/01/09 09:03

投稿

papinianus
papinianus

スコア12705

test CHANGED
@@ -34,9 +34,9 @@
34
34
 
35
35
  function resetBgColorF() {
36
36
 
37
- // SpreadsheetApp.getActiveSheet().getDataRange().setBackground("white");
37
+ // SpreadsheetApp.getActiveSheet().getDataRange().setBackground(null);
38
38
 
39
- SpreadsheetApp.getActiveSheet().getRange("F:F").setBackground("white"); //F列のみ背景をリセット
39
+ SpreadsheetApp.getActiveSheet().getRange("F:F").setBackground(null); //F列のみ背景をリセット
40
40
 
41
41
  }
42
42
 

5

修正

2019/01/09 09:03

投稿

papinianus
papinianus

スコア12705

test CHANGED
@@ -22,7 +22,7 @@
22
22
 
23
23
  const myMenu=[
24
24
 
25
- {name: "背景色リセット", functionName: "resetBgColor"},
25
+ {name: "背景色リセット(F列全部)", functionName: "resetBgColorF"},
26
26
 
27
27
  ];
28
28
 
@@ -32,9 +32,11 @@
32
32
 
33
33
  }
34
34
 
35
- function resetBgColor() {
35
+ function resetBgColorF() {
36
36
 
37
- SpreadsheetApp.getActiveSheet().getDataRange().setBackground("white");
37
+ // SpreadsheetApp.getActiveSheet().getDataRange().setBackground("white");
38
+
39
+ SpreadsheetApp.getActiveSheet().getRange("F:F").setBackground("white"); //F列のみ背景をリセット
38
40
 
39
41
  }
40
42
 

4

修正

2019/01/09 08:32

投稿

papinianus
papinianus

スコア12705

test CHANGED
@@ -9,6 +9,8 @@
9
9
  ```javascript
10
10
 
11
11
  function onEdit(e) {
12
+
13
+ if(e.range.getColumn() !== 6) { return; } // F列以外なら中断する
12
14
 
13
15
  const colname = "pink";
14
16
 

3

ほそく

2019/01/09 07:38

投稿

papinianus
papinianus

スコア12705

test CHANGED
@@ -1,4 +1,10 @@
1
1
  こういうスクリプトをかけば、プルダウンだろうが何だろうが、編集したセルがピンクになります。
2
+
3
+
4
+
5
+ さらに、スプレッドシートを開き直せば、メニューにtoolが増え、そこに「背景色リセット」というのがあるので、これを押せば、データがある矩形範囲の全部の背景色が白になります。
6
+
7
+
2
8
 
3
9
  ```javascript
4
10
 
@@ -10,4 +16,24 @@
10
16
 
11
17
  }
12
18
 
19
+ function onOpen(){
20
+
21
+ const myMenu=[
22
+
23
+ {name: "背景色リセット", functionName: "resetBgColor"},
24
+
25
+ ];
26
+
27
+ SpreadsheetApp.getActiveSpreadsheet().addMenu("tool",myMenu); //メニューを追加
28
+
29
+
30
+
31
+ }
32
+
33
+ function resetBgColor() {
34
+
35
+ SpreadsheetApp.getActiveSheet().getDataRange().setBackground("white");
36
+
37
+ }
38
+
13
39
  ```

2

戻す

2019/01/09 07:32

投稿

papinianus
papinianus

スコア12705

test CHANGED
@@ -1,16 +1,10 @@
1
1
  こういうスクリプトをかけば、プルダウンだろうが何だろうが、編集したセルがピンクになります。
2
-
3
- また、ピンク状態から編集したときに限り、白に戻すように加筆しております。
4
-
5
- ただし、「戻した」「リセットされた」「2度目以降の編集である」は判定できないので、要件を追記してください。
6
2
 
7
3
  ```javascript
8
4
 
9
5
  function onEdit(e) {
10
6
 
11
- const bgCol = e.range.getBackground();
7
+ const colname = "pink";
12
-
13
- const colname = bgCol === "#ffc0cb" ? "white" : "pink";
14
8
 
15
9
  e.range.setBackground(colname)
16
10
 

1

修正

2019/01/09 07:24

投稿

papinianus
papinianus

スコア12705

test CHANGED
@@ -1,4 +1,6 @@
1
1
  こういうスクリプトをかけば、プルダウンだろうが何だろうが、編集したセルがピンクになります。
2
+
3
+ また、ピンク状態から編集したときに限り、白に戻すように加筆しております。
2
4
 
3
5
  ただし、「戻した」「リセットされた」「2度目以降の編集である」は判定できないので、要件を追記してください。
4
6
 
@@ -6,7 +8,11 @@
6
8
 
7
9
  function onEdit(e) {
8
10
 
11
+ const bgCol = e.range.getBackground();
12
+
13
+ const colname = bgCol === "#ffc0cb" ? "white" : "pink";
14
+
9
- e.range.setBackground("pink")
15
+ e.range.setBackground(colname)
10
16
 
11
17
  }
12
18