Excelで複数行のテキストを1つのセルに集約
何がしたいかというと,バラバラのセルに書かれている自由記述アンケートの結果を1つのセルにまとめたい。具体的には,以下のようなアンケート結果があって,
表1:アンケート結果
A | B | C | |
1 | Class_ID | Instructor_Name | comments |
2 | 1 | A | 良いです。 |
3 | 1 | A | とても良いです。 |
4 | 2 | B | まぁまぁ |
5 | 2 | B | ダメじゃん |
… | … | … | … |
20 | 10 | J | 良い! |
別のシートに表2のように整理したい。
A | B | C | |
1 | Class_ID | Instructor_name | Comments |
2 | 1 | A |
良いです。 とても良いです。 |
3 | 2 | B |
まぁまぁ。 ダメじゃん |
… | … | … | … |
10 | 10 | J | 良い! |
表2のC1で,以下の関数を使う。
=TEXTJOIN(CHAR(10),TRUE,IF(‘表1′!A:A=A2,’表1’!C:C,””))
TEXTJOIN(区切り文字,TRUE(空のセルは無視), if(表1のA:Aに,A2にあるClass_IDがあれば,表1のC:Cから書いてあることを取ってきて,区切り文字で分けつつ,結合する), Class_IDなければ,なにもしない)
CHAR(10)は改行を区切り文字とする関数