Thanks for all your support.
I have replaced 'Thisworkbook' to 'Activeworkbook to have this code in my personal.xlsb to use as and when required
Option Explicit
Sub Hardcoded_Workbook_Copy()
Dim Original_WB As Workbook
Dim MyName As String, HCName As String
Dim WS As Worksheet
Set Original_WB = ActiveWorkbook
MyName = Original_WB.Name
HCName = "HC_" & VBA.Format(Date, "ddmmyyyy") & "_" & Original_WB.Name
Dim r As Range
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Original_WB.Save
For Each WS In Sheets
For Each r In WS.UsedRange
If Not IsEmpty(r) Then r.Value = r.Value
Next
Next
Original_WB.SaveAs (Original_WB.Path & "\" & HCName)
Application.DisplayAlerts = True
Workbooks.Open (Original_WB.Path & "\" & MyName)
Workbooks(HCName).Close
Application.ScreenUpdating = True
End Sub