Hi branston!
Fixed 1 and 2 and border's requirements.
About position I'll take time to look at it.
But I don't think it's a good way to do it. There will still be problems in the future.
Sub Okami()
Dim arrOri, arrRst, d As Object, i&, c, cnt&, rng As Range, r&, rTop&, rBtm&
Set d = CreateObject("scripting.dictionary")
'--------Search------------------------------------------
rTop = Columns("b").Find("GROUP 2").Row + 1
rBtm = Cells(rTop, 2).End(4).Row
arrOri = Range(Cells(rTop, 2), Cells(rBtm, 3))
ReDim arrRst(1 To UBound(arrOri), 2)
For i = 1 To UBound(arrOri)
If arrOri(i, 2) = "N" Then d(arrOri(i, 1)) = ""
Next i
rTop = Columns("f").Find("GROUP 2").Row + 1
rBtm = Cells(rTop, 6).End(4).Row
arrOri = Range(Cells(rTop, 6), Cells(rBtm, 7))
For i = 1 To UBound(arrOri)
If arrOri(i, 2) = "N" Then
If d.exists(arrOri(i, 1)) Then
cnt = cnt + 1
arrRst(cnt, 0) = cnt
arrRst(cnt, 1) = arrOri(i, 1)
Set rng = Sheets("DATA").Columns("b").Find(arrOri(i, 1), lookat:=xlWhole)
If Not rng Is Nothing Then arrRst(cnt, 2) = rng.Offset(, 1) & ".jpg" Else arrRst(cnt, 2) = "xxxxx.jpg"
End If
End If
Next i
If cnt = 0 Then MsgBox "No candidates exist in this group.": Exit Sub
'--------Search------------------------------------------
'--------Output------------------------------------------
rTop = Columns("y").Find("group 1").Row
rBtm = Columns("y").Find("group 3").Row
r = rBtm - rTop - 8
Range("x" & rTop + 1 & ":z" & Cells(rBtm - 2, "y").End(3).Row) = ""
Columns("y").Find("group 1").CurrentRegion.Offset(1) = ""
If cnt > r Then Cells(Columns("y").Find("group 3").Row - 7, "x").Resize(cnt - r + 1, 8).Insert Shift:=xlDown
Set rng = Cells(Columns("y").Find("group 1").Row + 1, "x").Resize(cnt, 3)
rng = arrRst
rng.Columns(1).Interior.Color = vbYellow
rng.Borders().LineStyle = xlContinuous
'--------Output------------------------------------------
End Sub