I am still confused as to why my For Each didn't work, but I solved this by getting rid of my "For Each" and replacing it with the following:
Code:
Set rn = sh.UsedRange
k = rn.Rows.Count + rn.Row - 1
For y = 2 To k
If sh.Range("A" & y) Like "*2" Then
shdest.Range("D7") = sh.Range("A" & y)
Else: shdest.Range("D8") = sh.Range("A" & y)
End If
Next y