The problem is:

iRow = ws.Cells(Rows.Count, 1)
.End(xlUp).Offset(1, 0).Row _

Should be:

iRow = ws.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row

Or

iRow = ws.Cells(Rows.Count, 1) _
    .End(xlUp).Offset(1, 0).Row


Regards