I don't understand? I didn't change this, and the else fires if the conditional doesn't match e.g. line count < column headers - which is still valid reason to skip a row.