回答編集履歴
10
test
CHANGED
@@ -15,7 +15,7 @@
|
|
15
15
|
###### 説明
|
16
16
|
列グループ(または行グループ)を取得し、そのグループに対して
|
17
17
|
```
|
18
|
-
addManualGroupingRule('表示ラベル',[グルーピングしたい配列])
|
18
|
+
addManualGroupingRule('表示ラベル',[グルーピングしたい値の配列])
|
19
19
|
```
|
20
20
|
を指定することで、グループ化することが可能です。
|
21
21
|
|
9
test
CHANGED
@@ -30,7 +30,8 @@
|
|
30
30
|
const sum = S_pivotSheet.getRange(3, 8, targetRows, 1).setFormulaR1C1(`=SUM(R[0]C[-3]:R[${targetRows}]C[-2])`);
|
31
31
|
```
|
32
32
|
###### 説明
|
33
|
-
文字列中に変数の内容を適用したい場合、`${
|
33
|
+
文字列中に変数の内容を適用したい場合、`${変数}`を含む文字列をバッククオート「`」で囲みます(テンプレートリテラル)。
|
34
|
+
|
34
35
|
※バッククオート「`」で囲まないとテンプレートリテラルになりません。
|
35
36
|
「”」や「'」で${}を含む文字列を囲んでもテンプレートリテラルにはなりません。
|
36
37
|
|
8
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
#### Q1:
|
1
|
+
#### Q1:E列とF列でピボットグループを作成する
|
2
2
|
質問文中にある「(参考)ピボットテーブル作成させるコード」の20行目を下記のように変えてみて下さい。
|
3
3
|
```js
|
4
4
|
// pivot.addColumnGroup(11).setDisplayName('割合').showTotals(true); // 以下のように修正
|
7
test
CHANGED
@@ -15,7 +15,7 @@
|
|
15
15
|
###### 説明
|
16
16
|
列グループ(または行グループ)を取得し、そのグループに対して
|
17
17
|
```
|
18
|
-
addManualGroupingRule('表示ラベル'
|
18
|
+
addManualGroupingRule('表示ラベル',[グルーピングしたい配列])
|
19
19
|
```
|
20
20
|
を指定することで、グループ化することが可能です。
|
21
21
|
|
6
修正
test
CHANGED
@@ -1,25 +1,25 @@
|
|
1
1
|
#### Q1:
|
2
|
-
質問文中にある「(参考)ピボットテーブル作成させるコード」の
|
2
|
+
質問文中にある「(参考)ピボットテーブル作成させるコード」の20行目を下記のように変えてみて下さい。
|
3
3
|
```js
|
4
|
-
const criteria1 = SpreadsheetApp.newFilterCriteria()
|
5
|
-
|
4
|
+
// pivot.addColumnGroup(11).setDisplayName('割合').showTotals(true); // 以下のように修正
|
6
|
-
|
5
|
+
const pivotGroup = pivot.addColumnGroup(11).setDisplayName('割合').showTotals(true); //ピボット列に元データJ列を追加。小計は表示しない
|
7
6
|
|
7
|
+
// 列のうち、E列(50)と F列(100)をグルーピングする
|
8
|
+
pivotGroup.addManualGroupingRule('50 & 100', [50, 100]); // 追加
|
9
|
+
|
8
|
-
|
10
|
+
//▼ピボットTBLの値に表示するデータを指定
|
9
|
-
|
11
|
+
//B列(社員番号)_COUNTで設定
|
12
|
+
... 以降は同じ...
|
10
13
|
```
|
11
14
|
|
12
15
|
###### 説明
|
16
|
+
列グループ(または行グループ)を取得し、そのグループに対して
|
13
|
-
|
17
|
+
```
|
18
|
+
addManualGroupingRule('表示ラベル'、[グルーピングしたい配列])
|
19
|
+
```
|
20
|
+
を指定することで、グループ化することが可能です。
|
14
21
|
|
15
|
-
|
22
|
+
|
16
|
-
|
17
|
-
b. 任意の「文字列」を除外するフィルタを設定したい場合:[setHiddenValues()](https://developers.google.com/apps-script/reference/spreadsheet/filter-criteria-builder?hl=ja#sethiddenvaluesvalues) を使用します。
|
18
|
-
|
19
|
-
→ここでは割合の「10」が数値であるという前提で、whenNumberNotEqualTo を使用しています。
|
20
|
-
|
21
|
-
(2) addFilter:「割合」列に対して「10」を除外するというフィルタを適用するのであれば、割合列は11列目なので、 8ではなく 11 を指定します。
|
22
|
-
|
23
23
|
---
|
24
24
|
|
25
25
|
#### Q2:終了行可変の場合の指定方法
|
5
test
CHANGED
@@ -10,13 +10,15 @@
|
|
10
10
|
```
|
11
11
|
|
12
12
|
###### 説明
|
13
|
-
1
|
13
|
+
(1)
|
14
|
+
|
14
15
|
a. 任意の「数値」を除外するフィルタを設定したい場合:[whenNumberNotEqualTo](https://developers.google.com/apps-script/reference/spreadsheet/filter-criteria-builder?hl=ja#whennumberequaltonumber) を使用します。
|
15
16
|
|
16
17
|
b. 任意の「文字列」を除外するフィルタを設定したい場合:[setHiddenValues()](https://developers.google.com/apps-script/reference/spreadsheet/filter-criteria-builder?hl=ja#sethiddenvaluesvalues) を使用します。
|
17
|
-
→ここでは割合の「10」が数値であるという前提で、whenNumberNotEqualTo を使用しています。
|
18
18
|
|
19
|
+
→ここでは割合の「10」が数値であるという前提で、whenNumberNotEqualTo を使用しています。
|
20
|
+
|
19
|
-
2
|
21
|
+
(2) addFilter:「割合」列に対して「10」を除外するというフィルタを適用するのであれば、割合列は11列目なので、 8ではなく 11 を指定します。
|
20
22
|
|
21
23
|
---
|
22
24
|
|
@@ -28,8 +30,9 @@
|
|
28
30
|
const sum = S_pivotSheet.getRange(3, 8, targetRows, 1).setFormulaR1C1(`=SUM(R[0]C[-3]:R[${targetRows}]C[-2])`);
|
29
31
|
```
|
30
32
|
###### 説明
|
31
|
-
文字列中に変数の内容を適用したい場合、テンプレートリテラル
|
33
|
+
文字列中に変数の内容を適用したい場合、`${...}` を文字列をバッククオート「`」で囲みます(テンプレートリテラル)
|
34
|
+
※バッククオート「`」で囲まないとテンプレートリテラルになりません。
|
32
|
-
|
35
|
+
「”」や「'」で${}を含む文字列を囲んでもテンプレートリテラルにはなりません。
|
33
36
|
|
34
37
|
または
|
35
38
|
```
|
4
test
CHANGED
@@ -10,8 +10,13 @@
|
|
10
10
|
```
|
11
11
|
|
12
12
|
###### 説明
|
13
|
+
1.
|
14
|
+
a. 任意の「数値」を除外するフィルタを設定したい場合:[whenNumberNotEqualTo](https://developers.google.com/apps-script/reference/spreadsheet/filter-criteria-builder?hl=ja#whennumberequaltonumber) を使用します。
|
15
|
+
|
16
|
+
b. 任意の「文字列」を除外するフィルタを設定したい場合:[setHiddenValues()](https://developers.google.com/apps-script/reference/spreadsheet/filter-criteria-builder?hl=ja#sethiddenvaluesvalues) を使用します。
|
13
|
-
1
|
17
|
+
→ここでは割合の「10」が数値であるという前提で、whenNumberNotEqualTo を使用しています。
|
18
|
+
|
14
|
-
|
19
|
+
2. addFilter:「割合」列に対して「10」を除外するというフィルタを適用するのであれば、割合列は11列目なので、 8ではなく 11 を指定します。
|
15
20
|
|
16
21
|
---
|
17
22
|
|
3
test
CHANGED
@@ -10,7 +10,8 @@
|
|
10
10
|
```
|
11
11
|
|
12
12
|
###### 説明
|
13
|
+
1. whenNumberNotEqualTo : 除外対象が数字の場合、.whenNumberNotEqualTo を使用します。(仮に 除外する対象が文字列の場合は、setHiddenValues で指定します)
|
13
|
-
addFilter:「割合」列に対して「10」を除外するというフィルタを適用するのであれば、割合列は11列目なので、 8ではなく 11 を指定します。
|
14
|
+
2. addFilter:「割合」列に対して「10」を除外するというフィルタを適用するのであれば、割合列は11列目なので、 8ではなく 11 を指定します。
|
14
15
|
|
15
16
|
---
|
16
17
|
|
2
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
-
Q1:
|
1
|
+
#### Q1:
|
2
2
|
質問文中にある「(参考)ピボットテーブル作成させるコード」の31行目~34行目を下記のように変えてみて下さい。
|
3
|
-
```
|
3
|
+
```js
|
4
4
|
const criteria1 = SpreadsheetApp.newFilterCriteria()
|
5
5
|
.whenNumberNotEqualTo(10) // 「10」を除外
|
6
6
|
.build();
|
@@ -8,18 +8,22 @@
|
|
8
8
|
// ピボットテーブルをフィルタに追加する。(「割合」列)
|
9
9
|
pivotTable.addFilter(11, criteria1);
|
10
10
|
```
|
11
|
-
addFilter:「割合」列に対して「10」を除外するというフィルタを適用するのであれば、割合列は11列目なので、 8ではなく 11 を指定。
|
12
11
|
|
12
|
+
###### 説明
|
13
|
+
addFilter:「割合」列に対して「10」を除外するというフィルタを適用するのであれば、割合列は11列目なので、 8ではなく 11 を指定します。
|
14
|
+
|
15
|
+
---
|
16
|
+
|
13
|
-
Q2:終了行可変の場合の指定方法
|
17
|
+
#### Q2:終了行可変の場合の指定方法
|
14
18
|
|
15
19
|
19行目を下記のように変えてみて下さい。
|
16
20
|
```js
|
17
21
|
//基準セルから、行方向下に▲行、列方向左方向に●列 >>「R[▲(下方向)]C[-●(左方向)]」
|
18
22
|
const sum = S_pivotSheet.getRange(3, 8, targetRows, 1).setFormulaR1C1(`=SUM(R[0]C[-3]:R[${targetRows}]C[-2])`);
|
19
23
|
```
|
20
|
-
|
24
|
+
###### 説明
|
21
25
|
文字列中に変数の内容を適用したい場合、テンプレートリテラルを使用します。`${...}`
|
22
|
-
※バッククオート「`」で囲まないとテンプレートリテラルになりません。「”」や「'」は
|
26
|
+
※バッククオート「`」で囲まないとテンプレートリテラルになりません。「”」や「'」で${}を含む文字列を囲んでもテンプレートリテラルにはなりません。
|
23
27
|
|
24
28
|
または
|
25
29
|
```
|
1
test
CHANGED
@@ -18,7 +18,9 @@
|
|
18
18
|
const sum = S_pivotSheet.getRange(3, 8, targetRows, 1).setFormulaR1C1(`=SUM(R[0]C[-3]:R[${targetRows}]C[-2])`);
|
19
19
|
```
|
20
20
|
|
21
|
-
文字列中に変数の内容を適用したい場合、テンプレートリテラルを使用します。`${...}`
|
21
|
+
文字列中に変数の内容を適用したい場合、テンプレートリテラルを使用します。`${...}`
|
22
|
+
※バッククオート「`」で囲まないとテンプレートリテラルになりません。「”」や「'」は不可。
|
23
|
+
|
22
24
|
または
|
23
25
|
```
|
24
26
|
"=SUM(R[0]C[-3]:R[" + targetRows + "]C[-2]"
|