Not tested

[vba]

Private Sub Workbook_BeforeClose(Cancel As Boolean)
If MsgBox("ARE YOU READY TO UPDATE THE HISTORY FILE?", vbYesNo) = vbYes Then
Cancel = True
Dim SourceSheet As Worksheet
Dim TargetSheet As Worksheet
Dim SourceWb As Workbook
Dim TargetWb As Workbook
Dim rngCopy As Range
Application.ScreenUpdating = False
Set SourceWb = Workbooks("Book1.xls")
Set TargetWb = Workbooks("Book2.xls")

For Each SourceSheet In SourceWb.Sheets
For Each TargetSheet In TargetWb.Worksheets
If SourceSheet.Name = TargetSheet.Name Then

With TargetSheet.Range("A" & NextEmptyRow(TargetSheet))
.Value = Date
.NumberFormat = "ddd dd mmm yy"
' Add C285 and C286
SourceSheet.Range("C284").Copy
.Offset(, 1).PasteSpecial xlPasteValues
SourceSheet.Range("C286").Copy
.Offset(, 2).PasteSpecial xlPasteValues
SourceSheet.Range("C288").Copy
.Offset(, 3).PasteSpecial xlPasteValues

Set rngCopy = SourceSheet.Range("G260:AZ260")
rngCopy.Copy
.Offset(, 4).PasteSpecial xlPasteValues
Application.ScreenUpdating = True
End With
End If
Next TargetSheet
Next SourceSheet
End If
End Sub
[/vba]