回答になっていませんが、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
ワークシートの方では次のように上記関数を指定します。
サンプルなので細かい処理が足りていないかもしれませんし、速度も遅いかもしれません。
お試しください。
マクロに関して全くの初心者で何言ってるのかわからなかったら、調べながらやってみてください。