Hi!
Something like below. Can keep the original data.
Sub Pri2Vul()
Dim arrOri, i&, r&, arrRst(1 To 1000, 1 To 2)
arrOri = Sheets("Primary Data").[a1].CurrentRegion
For i = 2 To UBound(arrOri)
If arrOri(i, 18) = "Yes" Then
r = r + 1
arrRst(r, 1) = arrOri(i, 2)
arrRst(r, 2) = arrOri(i, 3)
End If
Next i
Sheets("Vulnerabilities").Cells(Rows.Count, "b").End(3).Offset(1).Resize(r, 2) = arrRst
End Sub
Sub Vul2RemOrExc()
Dim arrOri, i&, r1&, r2&, arrRem(1 To 1000, 1 To 2), arrExc(1 To 1000, 1 To 2)
arrOri = Sheets("Vulnerabilities").[a1].CurrentRegion
For i = 2 To UBound(arrOri)
If arrOri(i, 15) = "Exception requested" Then
r1 = r1 + 1
arrExc(r1, 1) = arrOri(i, 2)
arrExc(r1, 2) = arrOri(i, 3)
ElseIf arrOri(i, 15) = "In remediation" Then
r2 = r2 + 1
arrRem(r2, 1) = arrOri(i, 2)
arrRem(r2, 2) = arrOri(i, 3)
End If
Next i
Sheets("Remidiation").Cells(Rows.Count, "b").End(3).Offset(1).Resize(r2, 2) = arrRem
Sheets("Exception").Cells(Rows.Count, "b").End(3).Offset(1).Resize(r1, 2) = arrExc
End Sub