Sub findBold()
Dim rng As Range, cel As Range
Dim Lcol As Long, Lrow As Long, i As Integer
Dim str As String
On Error GoTo errHandler
With ActiveSheet
Lcol = .Cells.Find("*", SearchOrder:=xlByColumns, SearchDirection:=xlPrevious).Column
Lrow = Cells.Find(What:="*", After:=Range("A1"), LookAt:=xlPart, LookIn:=xlFormulas, _
SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False).Row
End With
Application.EnableEvents = False
i = 2
Set rng = Range(Cells(2, 2), Cells(Lrow, Lcol))
For Each Row In rng.Rows
For Each cel In Row.Cells
If Not cel Is Nothing And cel.Font.Bold Then str = str & cel.Value & ", "
Next cel
If Not str = "" Then
str = Trim(str)
str = Left(str, Len(str) - 1)
Cells(i, 1) = str
str = ""
End If
i = i + 1
Next Row
exitHere:
Application.EnableEvents = True
Exit Sub
errHandler:
MsgBox "Error " & Err.Number & ": " & Err.Description
Resume exitHere
End Sub