🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら

Q&A

解決済

1回答

521閲覧

エクセルにて条件検索

uimaro

総合スコア14

0グッド

0クリップ

投稿2020/01/06 02:13

下記出欠表で出欠を管理しています。
この中から出席者の名前を、別シートの一つのセルにまとめて表示したいのですが、どうすればよろしいでしょうか?

関数で解決できると助かります。

【出欠表】
A  B  C  D ・ ・ ・
1 A氏 出
2 B氏 出
3 C氏 欠
4 D氏 出


【別シート】
A     B           
1 出席者 A氏、B氏、D氏
2
3
4


行と列の表現が下手で申し訳ありませんが、ご回答いただければ幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ttyp03

2020/01/06 02:58

行数は固定なのか可変なのか、Excelのバージョンなど情報を追記してください。
uimaro

2020/01/06 03:48

コメントありがとうございます。 行数は可変で、使用バージョンはExcel2010です。
ttyp03

2020/01/06 04:10

マクロの使用可否も追加でお願いします。
uimaro

2020/01/06 04:43

マクロは使用せず、組み込み関数での解決を希望しております。
guest

回答1

0

ベストアンサー

回答になっていませんが、Excel2010では無理と思います。
Excel2016以降であればTEXTJOIN関数が使えますが、2010にはないので無理ですね。
解決策としてはTEXTJOIN相当の関数をマクロで実装するのが手っ取り早いと思いますが、マクロの使用を望んでいない以上できないと思います。


マクロを使ってみたいということなので、作ってみました。
下記のコードをVBEの標準モジュールに貼り付けてください。

VBA

1Function NAMEJOIN(src As Range) As String 2 Dim r As Range 3 Const s = "、" 4 NAMEJOIN = "" 5 For Each r In src 6 If r.Offset(0, 1).Value = "出" Then 7 NAMEJOIN = NAMEJOIN & r.Value & s 8 End If 9 Next 10 If Right(NAMEJOIN, 1) = s Then 11 NAMEJOIN = Left(NAMEJOIN, Len(NAMEJOIN) - 1) 12 End If 13End Function

ワークシートの方では次のように上記関数を指定します。

EXCEL

1=NAMEJOIN(A1:A100)

サンプルなので細かい処理が足りていないかもしれませんし、速度も遅いかもしれません。
お試しください。
マクロに関して全くの初心者で何言ってるのかわからなかったら、調べながらやってみてください。

投稿2020/01/06 06:48

編集2020/01/08 04:21
ttyp03

総合スコア17000

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

uimaro

2020/01/08 02:54

回答ありがとうございます。 PCに関してあまり詳しくないのですが、マクロでできるようなら挑戦してみたいです。
ttyp03

2020/01/08 04:21

サンプルコードを追加してみました。
uimaro

2020/01/09 02:09

マクロを使い、無事課題解決することができました!! 要求が分かりにくい部分もあったと思いますが完璧です! 非常に助かりました。 マクロに抵抗ありましたが、おかげさまでスムーズに進めることができました。ありがとうございました。 またご縁がありましたらよろしくお願いいたします。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問