then maybe so
Sub ertert()
Dim wb As Workbook, tC&, tR&
On Error Resume Next: Err.Clear
Set wb = Workbooks("WSO_Record.xls")
If Err Then Set wb = Workbooks.Open(ThisWorkbook.Path & Application.PathSeparator & "WSO_Record.xls")
On Error GoTo 0
With wb.Sheets("Record")
    tC = Application.Match("Work ID", .Rows(1), 0)
    tR = Application.Match("P12", .Columns(1), 0)
    .Cells(tC, tR) = ThisWorkbook.Worksheets("Sheet1").Range("B1")
    .Parent.Close True
End With
End Sub