السلام عليكم 
أخي العزيز 
إقترحت لك دالتين تم استحداثهما خصيصا لهذا الغرض 
وهما SNF ، TAK وكودهما 
  
Function TAK(a As Range) As String
    If a.Count > 1 Then TAK = "N/A": GoTo 10
    TAK = ""
    r = a.Row
    
    For c = 3 To 15 Step 2
       If IsEmpty(Cells(r, c)) Then
        nr = Cells(r, c).End(xlUp).Row
        TAK = TAK & Cells(nr, c): GoTo 5
       End If
       TAK = TAK & Cells(r, c)
5    Next c
10
End Function
=================================================================
Function SNF(a As Range) As String
    If a.Count > 1 Then SNF = "N/A": GoTo 10
    SNF = ""
    r = a.Row
    
    For c = 6 To 14 Step 2
       If IsEmpty(Cells(r, c)) Then
        nr = Cells(r, c).End(xlUp).Row
        SNF = SNF & " " & Cells(nr, c): GoTo 5
       End If
       SNF = SNF & " " & Cells(r, c)
5    Next c
10
SNF = Trim(SNF)
End Function
التكويد2.rar