You can add the VBA below to your document, and then use the function like this:
=CONCATENATEIF(A1:A8, "a", B1:B8, "_")
VBA CODE:
Function ConcatenateIf(CriteriaRange As Range, Condition As Variant, _ ConcatenateRange As Range, Optional Separator As String = ",") As Variant Dim i As Long Dim strResult As String On Error GoTo ErrHandler If CriteriaRange.Count <> ConcatenateRange.Count Then ConcatenateIf = CVErr(xlErrRef) Exit Function End If For i = 1 To CriteriaRange.Count If CriteriaRange.Cells(i).Value = Condition Then strResult = strResult & Separator & ConcatenateRange.Cells(i).Value End If Next i If strResult <> "" Then strResult = Mid(strResult, Len(Separator) + 1) End If ConcatenateIf = strResult Exit Function ErrHandler: ConcatenateIf = CVErr(xlErrValue) End Function