I'm not sure what I'm doing wrong. Your code on your file works fine, but it starts doing weird things when I enter a different amount of information on "Hotel Booking". When I delete the information in "Hotel Booking" and run the macro, it will still paste the rows of information that I deleted. Also when I try to enter new rows of information below it, it will not paste that information onto "Cache". The number of information, the number of rows I should say, is not constant. It keeps changing everytime the macro is run. I need it to work such that eg, if I enter 3 rows of information on "Hotel Booking" and run the macro, and I then delete the information from "Hotel Booking" and insert 4 rows of different information and run the macro again, the macro should delete accordingly. First delete the initial 3 rows, then the 4 rows, according to when they were run. I attached my file below. Note that the range of information is only "Q10:U19, X10:X19", but sometimes information may not be filled all the way until row 19.