回答編集履歴

9

 

2022/05/18 22:22

投稿

退会済みユーザー
test CHANGED
@@ -28,7 +28,7 @@
28
28
  ただし、質問文に書いてある数式に限れば、下記のように修正すれば期待する動作をさせることはできると思います。
29
29
 
30
30
 
31
- ・シート2の「G5セル」に「研修生ごとの時間!」と入力 (シングルクォート「'」で囲まないこと)
31
+ ・シート2の「G5セル」に「研修生ごとの時間!C」と入力 (シングルクォート「'」で囲まないこと)
32
32
  ・シート2の「H5セル」に「=B2+2」
33
33
  ・シート2の「C3セル」に「=INDIRECT(G5&H5)」を記述  (文字列の連結は「+」ではなく「&」を使う)
34
34
  → 出力「研修生ごとの時間」シートの「C列n行目(nは"B2セルの内容+2"の計算結果)」のセルの内容が表示される。

8

 

2022/05/18 14:37

投稿

退会済みユーザー
test CHANGED
@@ -28,9 +28,9 @@
28
28
  ただし、質問文に書いてある数式に限れば、下記のように修正すれば期待する動作をさせることはできると思います。
29
29
 
30
30
 
31
- ・シート2の「G5セル」に「研修生ごとの時間!」と入力 (シングルクォート「'」で囲まない)
31
+ ・シート2の「G5セル」に「研修生ごとの時間!」と入力 (シングルクォート「'」で囲まないこと
32
32
  ・シート2の「H5セル」に「=B2+2」
33
33
  ・シート2の「C3セル」に「=INDIRECT(G5&H5)」を記述  (文字列の連結は「+」ではなく「&」を使う)
34
- →出力「研修生ごとの時間」シートの「C列n行目(nは"B2セルの内容+2"の計算結果)」のセルの内容が表示される。
34
+ 出力「研修生ごとの時間」シートの「C列n行目(nは"B2セルの内容+2"の計算結果)」のセルの内容が表示される。
35
35
 
36
36
 

7

 

2022/05/18 14:36

投稿

退会済みユーザー
test CHANGED
@@ -1,11 +1,14 @@
1
- (1)シート2/3のB列2行目以降に入れるNo.の値が、昇順かつ、重複しない場合
1
+ # (1)シート2/3のB列2行目以降に入れるNo.の値が、昇順かつ、重複しない場合
2
2
  → シート2のC3セル、シート3のC3セルそれぞれに下記の数式を入れてみて下さい。
3
3
  ```
4
4
  =ARRAYFORMULA(QUERY('シート1'!$B$3:$E,"select C,D,E where B Matches '"&TEXTJOIN("|",TRUE,B3:B)&"'"))
5
5
  ```
6
6
  ただしこの数式は、B列にいれるNo.の順序がばらばらだったり、重複したNo.を入れると正しく動作しません。
7
7
 
8
+  
9
+  
8
- (2) シート2/3のB列2行目以降に入れるNo.の値が、順序がばらばらで、重複する可能性もある場合(こちらの方が対応できる範囲が広いと思います)
10
+ # (2) シート2/3のB列2行目以降に入れるNo.の値が、順序がばらばらで、重複する可能性もある場合
11
+ (こちらの方が対応できる範囲が広いと思います)
9
12
  → シート2のC列の3行目以降、シート3のC列3行目以降に下記の数式を入れてみて下さい。(数式はコピーして貼り付けのこと)(各行ごとに数式を入れる必要があります)
10
13
  ```
11
14
  =IFERROR(QUERY('シート1'!$B$3:$E,"select C,D,E where B="&B3),"")
@@ -15,6 +18,8 @@
15
18
  ...
16
19
  ..
17
20
  ```
21
+
22
+ ---------
18
23
 
19
24
  > ②のようなやり方で行った場合、テキストを関数としてみさせるにはどうすればいいでしょうか?
20
25
  INDIRECT関数は、セル番地を表す文字列をその番地の内容として認識させることしかできません。

6

 

2022/05/18 14:35

投稿

退会済みユーザー
test CHANGED
@@ -1,11 +1,12 @@
1
1
  (1)シート2/3のB列2行目以降に入れるNo.の値が、昇順かつ、重複しない場合
2
- シート2のC3セル、シート3のC3セルそれぞれに下記の数式を入れてみて下さい。
2
+ シート2のC3セル、シート3のC3セルそれぞれに下記の数式を入れてみて下さい。
3
3
  ```
4
4
  =ARRAYFORMULA(QUERY('シート1'!$B$3:$E,"select C,D,E where B Matches '"&TEXTJOIN("|",TRUE,B3:B)&"'"))
5
5
  ```
6
+ ただしこの数式は、B列にいれるNo.の順序がばらばらだったり、重複したNo.を入れると正しく動作しません。
6
7
 
7
- (2)シート2/3のB列2行目以降に入れるNo.の値が、順序がばらばらで、重複する可能性もある場合(こちらの方が対応できる範囲が広いと思います)
8
+ (2) シート2/3のB列2行目以降に入れるNo.の値が、順序がばらばらで、重複する可能性もある場合(こちらの方が対応できる範囲が広いと思います)
8
- シート2のC列の3行目以降、シート3のC列3行目以降に下記の数式を入れてみて下さい。(数式はコピーして貼り付けのこと)(各行ごとに数式を入れる必要があります)
9
+ シート2のC列の3行目以降、シート3のC列3行目以降に下記の数式を入れてみて下さい。(数式はコピーして貼り付けのこと)(各行ごとに数式を入れる必要があります)
9
10
  ```
10
11
  =IFERROR(QUERY('シート1'!$B$3:$E,"select C,D,E where B="&B3),"")
11
12
  =IFERROR(QUERY('シート1'!$B$3:$E,"select C,D,E where B="&B4),"")

5

 

2022/05/18 14:34

投稿

退会済みユーザー
test CHANGED
@@ -20,10 +20,11 @@
20
20
  基本的に関数を記述した文字列を関数として認識させることはできません。
21
21
 
22
22
  ただし、質問文に書いてある数式に限れば、下記のように修正すれば期待する動作をさせることはできると思います。
23
-  
24
- ・「G5セル」に「研修生ごとの時間!」  (シングルクォート」「'」で囲まない)
25
- ・「H5セル」に「=B2+2」
26
- ・シート2「C3セル」に「=INDIRECT(G5&H5)」を記述  (文字列の連結は「+」ではなく「&」を使う)
27
- →出力「研修生ごとの時間」シートの「C3」セルの内容が表示される。
28
23
 
29
24
 
25
+ ・シート2の「G5セル」に「研修生ごとの時間!」と入力 (シングルクォート」「'」で囲まない)
26
+ ・シート2の「H5セル」に「=B2+2」
27
+ ・シート2の「C3セル」に「=INDIRECT(G5&H5)」を記述  (文字列の連結は「+」ではなく「&」を使う)
28
+ →出力「研修生ごとの時間」シートの「C列n行目(nは"B2セルの内容+2"の計算結果)」のセルの内容が表示される。
29
+
30
+

4

  

2022/05/18 14:33

投稿

退会済みユーザー
test CHANGED
@@ -17,6 +17,13 @@
17
17
 
18
18
  > ②のようなやり方で行った場合、テキストを関数としてみさせるにはどうすればいいでしょうか?
19
19
  INDIRECT関数は、セル番地を表す文字列をその番地の内容として認識させることしかできません。
20
- 関数を記述した文字列を関数として認識させることはできません。
20
+ 基本的に関数を記述した文字列を関数として認識させることはできません。
21
+
22
+ ただし、質問文に書いてある数式に限れば、下記のように修正すれば期待する動作をさせることはできると思います。
23
+  
24
+ ・「G5セル」に「研修生ごとの時間!」  (シングルクォート」「'」で囲まない)
25
+ ・「H5セル」に「=B2+2」
26
+ ・シート2「C3セル」に「=INDIRECT(G5&H5)」を記述  (文字列の連結は「+」ではなく「&」を使う)
27
+ →出力「研修生ごとの時間」シートの「C3」セルの内容が表示される。
21
28
 
22
29
 

3

 

2022/05/18 14:16

投稿

退会済みユーザー
test CHANGED
@@ -1,10 +1,10 @@
1
- (1)B2セルに入れる値が、昇順かつ、重複しない場合
1
+ (1)シート2/3のB2行目以降に入れるNo.の値が、昇順かつ、重複しない場合
2
2
  シート2のC3セル、シート3のC3セルそれぞれに下記の数式を入れてみて下さい。
3
3
  ```
4
4
  =ARRAYFORMULA(QUERY('シート1'!$B$3:$E,"select C,D,E where B Matches '"&TEXTJOIN("|",TRUE,B3:B)&"'"))
5
5
  ```
6
6
 
7
- (2)B2セルに入れる値が、順序がばらばらで、重複する可能性もある場合(こちらの方が対応できる範囲が広いと思います)
7
+ (2)シート2/3のB2行目以降に入れるNo.の値が、順序がばらばらで、重複する可能性もある場合(こちらの方が対応できる範囲が広いと思います)
8
8
  シート2のC列の3行目以降、シート3のC列3行目以降に下記の数式を入れてみて下さい。(数式はコピーして貼り付けのこと)(各行ごとに数式を入れる必要があります)
9
9
  ```
10
10
  =IFERROR(QUERY('シート1'!$B$3:$E,"select C,D,E where B="&B3),"")

2

 

2022/05/18 14:15

投稿

退会済みユーザー
test CHANGED
@@ -16,7 +16,7 @@
16
16
  ```
17
17
 
18
18
  > ②のようなやり方で行った場合、テキストを関数としてみさせるにはどうすればいいでしょうか?
19
- INDIRECT関数は、セル番地を表す文字列をその番地の内容として認識ることしかできません。
19
+ INDIRECT関数は、セル番地を表す文字列をその番地の内容として認識させることしかできません。
20
20
  関数を記述した文字列を関数として認識させることはできません。
21
21
 
22
22
 

1

追記

2022/05/18 14:14

投稿

退会済みユーザー
test CHANGED
@@ -1,4 +1,22 @@
1
+ (1)B2セルに入れる値が、昇順かつ、重複しない場合
1
2
  シート2のC3セル、シート3のC3セルそれぞれに下記の数式を入れてみて下さい。
2
3
  ```
3
4
  =ARRAYFORMULA(QUERY('シート1'!$B$3:$E,"select C,D,E where B Matches '"&TEXTJOIN("|",TRUE,B3:B)&"'"))
4
5
  ```
6
+
7
+ (2)B2セルに入れる値が、順序がばらばらで、重複する可能性もある場合(こちらの方が対応できる範囲が広いと思います)
8
+ シート2のC列の3行目以降、シート3のC列3行目以降に下記の数式を入れてみて下さい。(数式はコピーして貼り付けのこと)(各行ごとに数式を入れる必要があります)
9
+ ```
10
+ =IFERROR(QUERY('シート1'!$B$3:$E,"select C,D,E where B="&B3),"")
11
+ =IFERROR(QUERY('シート1'!$B$3:$E,"select C,D,E where B="&B4),"")
12
+ =IFERROR(QUERY('シート1'!$B$3:$E,"select C,D,E where B="&B5),"")
13
+ ....
14
+ ...
15
+ ..
16
+ ```
17
+
18
+ > ②のようなやり方で行った場合、テキストを関数としてみさせるにはどうすればいいでしょうか?
19
+ INDIRECT関数は、セル番地を表す文字列をその番地の内容として認識することしかできません。
20
+ 関数を記述した文字列を関数として認識させることはできません。
21
+
22
+