Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10全般 : Excel 2016)
データ集計
投稿日時: 18/05/15 14:32:59
投稿者: nob1122

    A    B     C   D 
1 リンゴ  太郎  二郎  三郎
2 バナナ  二郎  三郎
3 ミカン  太郎  三郎
4 イチゴ  太郎  三郎
  
   A    B   
1 太郎  リンゴ ミカン イチゴ
2 二郎  リンゴ バナナ
3 三郎  リンゴ バナナ ミカン イチゴ
  
上記表のデータを、下記表のように集計したいです。
下記表のB列に、上記表のデータ(果物)を入れたいのです。B列内のデータの間は、スペースで区切りたいです。
  
IF関数、MATCH関数で行おうと思いましたが、実際のデータ量が、もっと多いので、ネストでは処理できません。
  
お助けください。

回答
投稿日時: 18/05/15 16:37:23
投稿者: Suzu

横方向は、D列で終わりなのでしょうか?
 
もっとあるとして。。列の最大数は決まっているのでしょうか?
 
VBAは使っても良い?悪い?

投稿日時: 18/05/15 16:55:12
投稿者: nob1122

ありがとうございます。
 
上記表は、D列より多いです。(40列程度)
 
関数のみで無理ならば、VBAでも構いません。
 
よろしくお願いします。

投稿日時: 18/05/15 16:59:14
投稿者: nob1122

付け加えです。
 
行に関しても、50行程度あります。
 
よろしくお願いします。

回答
投稿日時: 18/05/15 18:05:32
投稿者: んなっと

●Sheet1
 
    A   B   C   D
1 リンゴ 太郎 二郎 三郎
2 バナナ 二郎 三郎   
3 ミカン 太郎 三郎   
4 イチゴ 太郎 三郎   
 
●Sheet2
 
   A              B    C    D    E    F
1 太郎     リンゴ ミカン イチゴ リンゴ ミカン イチゴ      
2 二郎        リンゴ バナナ リンゴ バナナ          
3 三郎 リンゴ バナナ ミカン イチゴ リンゴ バナナ ミカン イチゴ  
 
B1
=TEXTJOIN(" ",TRUE,C1:J1)
下方向・↓
C1
=IF($A1="","",IFERROR(INDEX(Sheet1!$A:$A,AGGREGATE(15,6,ROW($1:$60)/(Sheet1!$B$1:$AZ$60=$A1),COLUMN(A1))),""))
右方向・→下方向・↓

投稿日時: 18/05/15 19:03:20
投稿者: nob1122

んなっと様
 
感謝、感謝。ありがとうございました。
 
関数だけで、できて感激です。
 
大変、勉強になりました。