Before Sheets("COPYHERE").Select, place a line ThisWorkbook.Activate. That activates the workbook running the code.
Also take another look at
Sheets("COPYHERE").Range("A" & lastrow + 1).Value = Date
Sheets("COPYHERE").Range("B" & lastrow + 1).Value = Time
Range("L43:X93").Copy Worksheets("COPYHERE").Range("A" & lastrow + 2)
Sheets, Worksheets and Range refer to ActiveWorkbook/ActiveSheet. Unless you're sure that's what you want, I recommend you change Sheets to ThisWorkbook.Sheets, Worksheet to ThisWorkbook.Worksheet and Range to ThisWorkbook.Sheets(<sheet name>).Range(<address>).