回答編集履歴
6
修正
test
CHANGED
@@ -22,5 +22,6 @@
|
|
22
22
|
|
23
23
|
・データが多いと重くなります。
|
24
24
|
この手の「単なる表示の組み換え」は、GoogleスプレッドシートにおけるQuery関数の本来の使い方ではないと思います。
|
25
|
-
データが大量にあって重すぎて使えない場合は、素直にGASを使うべきだと思います。
|
26
25
|
|
26
|
+
データが大量にあって重すぎて使いものにならないと感じられる場合は、素直にGASを使ってください。
|
27
|
+
|
5
条件2も満たす数式にする
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
要件1
|
1
|
+
要件1/2を満たすものです。(条件3は満たしていません)
|
2
2
|
|
3
3
|
---
|
4
4
|
たとえば、組み替えたいデータの範囲が「A列の1行目」から「U列まで」であると仮定します。
|
@@ -6,14 +6,14 @@
|
|
6
6
|
注意:この数式の結果が展開される範囲のセルに、この数式以外のデータが入っていてはいけません(展開先のセルにデータがあると、#REFエラーになります)
|
7
7
|
|
8
8
|
```
|
9
|
-
=ArrayFormula(QUERY({ A1:C; A1:A, C1:D; A1:A, F1:G; A1:A, H1:I; A1:A, J1:K; A1:A, L1:M; A1:A, N1:O; A1:A, P1:Q; A1:A, R1:S; A1:A, T1:U }, "WHERE Col1 IS NOT NULL ORDER BY Col1" ))
|
9
|
+
=ArrayFormula(QUERY({ A1:C; A1:A, C1:D; A1:A, F1:G; A1:A, H1:I; A1:A, J1:K; A1:A, L1:M; A1:A, N1:O; A1:A, P1:Q; A1:A, R1:S; A1:A, T1:U }, "WHERE (Col1 IS NOT NULL AND Col2 IS NOT NULL) OR (Col1 IS NOT NULL AND Col3 IS NOT NULL) ORDER BY Col1" ))
|
10
10
|
```
|
11
11
|
|
12
12
|
|
13
13
|
データが違う場所にあるときの例:
|
14
14
|
たとえばA列の「8行目」からデータがある場合は、
|
15
15
|
```
|
16
|
-
=ArrayFormula(QUERY({ A8:C; A8:A, C8:D; A8:A, F8:G; A8:A, H8:I; A8:A, J8:K; A8:A, L8:M; A8:A, N8:O; A8:A, P8:Q; A8:A, R8:S; A8:A, T8:U }, "WHERE Col1 IS NOT NULL ORDER BY Col1" ))
|
16
|
+
=ArrayFormula(QUERY({ A8:C; A8:A, C8:D; A8:A, F8:G; A8:A, H8:I; A8:A, J8:K; A8:A, L8:M; A8:A, N8:O; A8:A, P8:Q; A8:A, R8:S; A8:A, T8:U }, "WHERE (Col1 IS NOT NULL AND Col2 IS NOT NULL) OR (Col1 IS NOT NULL AND Col3 IS NOT NULL) ORDER BY Col1" ))
|
17
17
|
```
|
18
18
|
のようになります。
|
19
19
|
|
4
列数を誤っていたのを修正
test
CHANGED
@@ -1,19 +1,19 @@
|
|
1
1
|
要件1だけです。
|
2
2
|
|
3
3
|
---
|
4
|
-
たとえば、組み替えたいデータの範囲が「A列の1行目」から「
|
4
|
+
たとえば、組み替えたいデータの範囲が「A列の1行目」から「U列まで」であると仮定します。
|
5
|
-
この場合は、そのデータ列と重ならない列(
|
5
|
+
この場合は、そのデータ列と重ならない列(V列以降)に下記の数式を入れてください。
|
6
6
|
注意:この数式の結果が展開される範囲のセルに、この数式以外のデータが入っていてはいけません(展開先のセルにデータがあると、#REFエラーになります)
|
7
7
|
|
8
8
|
```
|
9
|
-
=ArrayFormula(QUERY({ A1:
|
9
|
+
=ArrayFormula(QUERY({ A1:C; A1:A, C1:D; A1:A, F1:G; A1:A, H1:I; A1:A, J1:K; A1:A, L1:M; A1:A, N1:O; A1:A, P1:Q; A1:A, R1:S; A1:A, T1:U }, "WHERE Col1 IS NOT NULL ORDER BY Col1" ))
|
10
10
|
```
|
11
11
|
|
12
12
|
|
13
13
|
データが違う場所にあるときの例:
|
14
14
|
たとえばA列の「8行目」からデータがある場合は、
|
15
15
|
```
|
16
|
-
=ArrayFormula(QUERY({ A8:
|
16
|
+
=ArrayFormula(QUERY({ A8:C; A8:A, C8:D; A8:A, F8:G; A8:A, H8:I; A8:A, J8:K; A8:A, L8:M; A8:A, N8:O; A8:A, P8:Q; A8:A, R8:S; A8:A, T8:U }, "WHERE Col1 IS NOT NULL ORDER BY Col1" ))
|
17
17
|
```
|
18
18
|
のようになります。
|
19
19
|
|
3
修正
test
CHANGED
@@ -1,8 +1,9 @@
|
|
1
1
|
要件1だけです。
|
2
2
|
|
3
3
|
---
|
4
|
+
たとえば、組み替えたいデータの範囲が「A列の1行目」から「AE列まで」であると仮定します。
|
4
|
-
|
5
|
+
この場合は、そのデータ列と重ならない列(AF列以降)に下記の数式を入れてください。
|
5
|
-
|
6
|
+
注意:この数式の結果が展開される範囲のセルに、この数式以外のデータが入っていてはいけません(展開先のセルにデータがあると、#REFエラーになります)
|
6
7
|
|
7
8
|
```
|
8
9
|
=ArrayFormula(QUERY({ A1:D; A1:A, E1:G; A1:A, H1:J; A1:A, K1:M; A1:A, N1:P; A1:A, Q1:S; A1:A, T1:V; A1:A, W1:Y; A1:A, Z1:AB; A1:A, AC1:AE }, "WHERE Col1 IS NOT NULL ORDER BY Col1" ))
|
2
修正
test
CHANGED
@@ -7,8 +7,9 @@
|
|
7
7
|
```
|
8
8
|
=ArrayFormula(QUERY({ A1:D; A1:A, E1:G; A1:A, H1:J; A1:A, K1:M; A1:A, N1:P; A1:A, Q1:S; A1:A, T1:V; A1:A, W1:Y; A1:A, Z1:AB; A1:A, AC1:AE }, "WHERE Col1 IS NOT NULL ORDER BY Col1" ))
|
9
9
|
```
|
10
|
+
|
11
|
+
|
10
|
-
|
12
|
+
データが違う場所にあるときの例:
|
11
|
-
|
12
13
|
たとえばA列の「8行目」からデータがある場合は、
|
13
14
|
```
|
14
15
|
=ArrayFormula(QUERY({ A8:D; A8:A, E8:G; A8:A, H8:J; A8:A, K8:M; A8:A, N8:P; A8:A, Q8:S; A8:A, T8:V; A8:A, W8:Y; A8:A, Z8:AB; A8:A, AC8:AE }, "WHERE Col1 IS NOT NULL ORDER BY Col1" ))
|
1
修正
test
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
要件1だけです。
|
2
2
|
|
3
3
|
---
|
4
|
-
たとえば、A列の
|
4
|
+
たとえば、「A列の1行目」から「AE列まで」データある場合は、そのデータ列と重ならない列(AF列以降)に下記の数式を入れてください。
|
5
5
|
また、この数式の結果が展開される範囲のセルに、この数式以外のデータが入っていてはいけません(展開先のセルにデータがあると、#REFエラーになります)
|
6
6
|
|
7
7
|
```
|