質問編集履歴
2
コードの表記を訂正
title
CHANGED
File without changes
|
body
CHANGED
@@ -19,14 +19,14 @@
|
|
19
19
|

|
20
20
|
上図のように、実は取り出したい配列は「『15行目から最終行のうち』表示されている行」でした。
|
21
21
|
```GAS
|
22
|
-
コード
|
23
|
-
|
22
|
+
function test(){
|
24
23
|
const sheet = SpreadsheetApp.getActiveSheet();
|
25
24
|
const lastrow = sheet.getLastRow();
|
26
25
|
const values = sheet.getRange(15,1,lastrow-14, 2).getValues();
|
27
26
|
const show_values = values.filter((row,i) => !sheet.isRowHiddenByUser(i+15));
|
28
27
|
console.log(show_values);
|
29
28
|
}
|
29
|
+
```
|
30
30
|
isRowHiddenByUserの引数を「i」から[i+15」に変えることで
|
31
31
|
やりたかったことが実現できました。
|
32
32
|
|
1
やりたかったことは実現できたが、さらなる質問を追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -10,4 +10,30 @@
|
|
10
10
|
例えば、全データ数が10個あり、上から2,3,8行目のデータのみが表示されている状態があったとします。(1,4~7,9,10行目が非表示になっている)
|
11
11
|
ここでgetRange().getValues()により配列を取得すると2行目から8行目まで、7つのデータが入った配列が取得されてしまいます。
|
12
12
|
|
13
|
-
GASで、表示されている行のみを取得する方法ってあるのでしょうか?
|
13
|
+
GASで、表示されている行のみを取得する方法ってあるのでしょうか?
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
2021/02/05追記
|
18
|
+
すみません、例がよくなかったようです…
|
19
|
+

|
20
|
+
上図のように、実は取り出したい配列は「『15行目から最終行のうち』表示されている行」でした。
|
21
|
+
```GAS
|
22
|
+
コード
|
23
|
+
```function test(){
|
24
|
+
const sheet = SpreadsheetApp.getActiveSheet();
|
25
|
+
const lastrow = sheet.getLastRow();
|
26
|
+
const values = sheet.getRange(15,1,lastrow-14, 2).getValues();
|
27
|
+
const show_values = values.filter((row,i) => !sheet.isRowHiddenByUser(i+15));
|
28
|
+
console.log(show_values);
|
29
|
+
}
|
30
|
+
isRowHiddenByUserの引数を「i」から[i+15」に変えることで
|
31
|
+
やりたかったことが実現できました。
|
32
|
+
|
33
|
+
もう少々お聞きしてもよろしいでしょうか?
|
34
|
+
filterメソッドの引数(row,i)とisRowHiddenByUserとの関係をご教示いただけますでしょうか。
|
35
|
+
アロー式にまだ慣れていないので、functionだとどういう書き方となるのか
|
36
|
+
教えていただけると今の私でも理解できるかもしれません。
|
37
|
+
|
38
|
+
大変恐縮ではございますが、せっかくなのできちんと理解しておきたいと思うのです。
|
39
|
+
宜しくお願いいたします。
|