ここから本文です

エクセルの抽出方法について、行き詰ってしまいました。 どなたかご教授願います...

yap********さん

2019/5/2418:14:21

エクセルの抽出方法について、行き詰ってしまいました。
どなたかご教授願います。

A列に「チェックボックス」、B列に「持ち物」、C列にはA列の各チェックボックスと「=」でリンクさせています。

チェックボックスで選択したものだけを以下のように抽出、表示させたいです。
※画像のようになってほしいのです。

①A10:A14 には、選んだ順番に1セル1項目を表示させたいです。

②B10 に、選んだ項目を抽出しますが、項目と項目の間にだけ、「、」をつけたいです。

③E10 に、選んだ項目を抽出しますが、頭に「★」をつけ、かつ項目と項目の間を改行させたいです。

どこか、別なセル等に一度表を作ってからそれを反映させる方法もあるのか、
最終的に画像のようにになれば、だんでもよいですが、マクロはさっぱりわからないので、
関数での方法をお願いいたします。

A14,項目,チェックボックス,A10,抽出,A11&amp,A10&amp

閲覧数:
41
回答数:
3
お礼:
500枚

違反報告

ベストアンサーに選ばれた回答

mit********さん

2019/5/2507:00:52

作業列を作って対応するのがおすすめです。
お示しの通りの表としてJ2セルには次の式を入力して下方にドラッグコピーします。

=IF(B2="","",IF(C2=FALSE,IF(J1="","",J1),IF(J1="",B2,J1&","&B2)))


その後にお求めの表でA10セルには次の式を入力して下方にドラッグコピーします。

=TRIM(MID(SUBSTITUTE(INDEX(J$2:J$9,COUNTA(B$2:B$9)),",",REPT(" ",100)),ROW(A1)*100-99,100))

B10セルからD14セルを選択してから「配置」のタブで「セルを結合して中央揃え」を選択します。
数式バー上には次の式を入力します。

=INDEX(J$2:J$9,COUNTA(B$2:B$9))

E10セルからG14セルを選択してから「配置」のタブで「セルを結合して中央揃え」を選択します。
数式バー上には次の式を入力します。

="★"&SUBSTITUTE(INDEX(J$2:J$9,COUNTA(B$2:B$9)),",",CHAR(10)&"★")

配置のタブでは「折り返して全体を表示する」にします。

質問した人からのコメント

2019/5/26 02:09:59

できました。すごく悩んでいたので感動です。
どうもありがとうございました。

ベストアンサー以外の回答

1〜2件/2件中

並び替え:回答日時の
新しい順
|古い順

kab********さん

2019/5/2421:40:55

下の画像では

1.A10のセルに
__=IFERROR(INDEX(B$1:B$6,1/LARGE(INDEX((C$1:C$6=TRUE)/ROW($1:$6),),ROW(A1))),"")
2.A10のセルを下のA14のセルまでコピー
3.結合されたB10:D14に
__=SUBSTITUTE(TRIM(A10&" "&A11&" "&A12&" "&A13&" "&A14)," ","、")
4.結合されたE10:G14でセルの書式設定の[配置]タブで「折り返して全体を表示する」にチェック
5.同じく結合されたE10:G14に
__=SUBSTITUTE(TRIM(IF(A10="","","★")&A10&" "&IF(A11="","","★")&A11&" "&IF(A12="","","★")&A12&" "&IF(A13="","","★")&A13&" "&IF(A14="","","★")&A14)," ",CHAR(10))

としたものです。

下の画像では

1.A10のセルに...

zic********さん

2019/5/2421:10:24

このチェックボックスは、ActiveXなのですか。

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる