Thanks for your reply,

i didnt realise in typing it that way i was only defining the last variable as the type. seems a bit strange because i picked that up after seeing it in several different places as examples. But as that is the case i will make all the necessary adjustments in that regard.

I realise what you are saying makes sense to you but unfortunately not to me. I am trying to tell it to cut the row that is what iRow equals and paste/insert it to where iRow3 is in the other worksheet.

in my VERY limited knowledge of VBA coding i thought that the bit in () was basically saying in ws4 row 2 insert the row. where the 2 is determined by the value of iRow3.

ws4.Range(iRow3.Row)
as you are saying that is obviously wrong could you please provide the correct syntax for what im trying to achieve.

Thanks again
Regards
Mag