[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『名前で検索し、複数マッチした結果を1つのセルに集計する方法』(もりたく)
SUMIF関数では条件を指定して数値を合計できますが、条件を指定して文字列を連結(カンマで区切るなど)するようなことは、可能でしょうか。
イメージとしては、以下の元データから、
社員名 持ち物 A 鉛筆 B ペン A ペン C 万年筆 C ペン
下記のような集約されたリストを作成したいと思っています。
社員名 持ち物リスト A 鉛筆,ペン B ペン C 万年筆,ペン
勝手に名前を付ければ、「textjoinif」関数という感じです。
具体的な応用としては、固定資産の資産棚卸をする際に、管理者に固定資産番号のリストを送る、ということを考えています。
よろしくお願いします。
< 使用 Excel:Office365、使用 OS:Windows10 >
|[A]|[B] |[C] [1]|A |pen |=TEXTJOIN(",",TRUE,FILTER($B$1:$B$6,$A$1:$A$6="A")) [2]|B |pensil |=TEXTJOIN(",",TRUE,FILTER($B$1:$B$6,$A$1:$A$6="B")) [3]|C |pensil |=TEXTJOIN(",",TRUE,FILTER($B$1:$B$6,$A$1:$A$6="C")) [4]|A |paper | [5]|B |pen | [6]|A |消しゴム|
こういうことですか? (*) 2021/11/15(月) 11:54
>勝手に名前を付ければ、「textjoinif」関数という感じです。
入れ子にすればよいですよ。
___A___ __B___ _C_ ___D___ _____E_____ 1 社員名 持ち物 社員名 持ち物 2 A 鉛筆 A 鉛筆,ペン 3 B ペン B ペン 4 A ペン C 万年筆,ペン 5 C 万年筆 6 C ペン
(1) E2セルに↓を入力 =TEXTJOIN(",",,IF($A$2:$A$6=D2,$B$2:$B$6,""))
(2)E3,E4セルに↑をコピペ
(もこな2 ) 2021/11/15(月) 11:55
データ範囲がA1:B6として C1セルに =UNIQUE(A1:A6) D1セルに =TEXTJOIN(",",,FILTER(B$1:B$6,A$1:A$6=C1)) ↓コピペ (どん) 2021/11/15(月) 12:01
現在365で確認できないのだがどんさんの式を =TEXTJOIN(",",,FILTER(B1:B6,A1:A6=C1:C6)) とするとスピル機能が働かないだろうか? (ねむねむ) 2021/11/15(月) 12:17
>とするとスピル機能が働かないだろうか? =A1:A6=C1:C6の戻り値は TRUE TRUE TRUE FALSE FALSE FALSE なので、スピルせずD1セルに、 持ち物,鉛筆,ペンが返ります (どん) 2021/11/15(月) 12:43
どんさん、確認してくれてありがとう。 TEXTJOIN自身が配列を扱えるのでそうなってしまうのか。 (ねむねむ) 2021/11/15(月) 13:02
>TEXTJOIN自身が配列を扱えるのでそうなってしまうのか。 これ関係ないか。 単に A1=C1 A2=C2 A3=C3 A4=C4 A5=C5 A6=C6 の配列になるってことか。 (ねむねむ) 2021/11/16(火) 07:41
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.