So should a row be copied only if both conditions are met? In that case change this line
If .Range("AI" & i).Value = "ABC" Then
to
If .Range("AI" & i).Value = "ABC" and .Range("AH" & i).value = "888888" Then
else if any 1 condition should be met for a single row then change it to
If .Range("AI" & i).Value = "ABC" or .Range("AH" & i).value = "888888" Then