API Excel In Solidworks Macro

I have and enclosure model that is driven by one central excel file.  The design tables which are part of the .sldprt or .sldasm are linked to this excel file.  I found this macro below which automates the open design table and close updating the .sldprt or sldasm files.  I lost the link so I can't give proper credit.  This works well, but when I duplicate the base files and want to point the links to a new central excel file I have to manually change the source files.

I haven't programmed in many years and am not grasping the VB.  I would like to modify this code to ask for the new excel file location, provide a way to terminate the program before proceeding and then open the excel file, change the linked pointer and update excel and close excel for each file with a design table.

Excel Macro:

Sub Macro2()

'

' Macro2 Macro

'

'

    ChDir "C:\LV Vault\NB\NBP000083_WallMount_HeatsinkExternal\Option2"

    ActiveWorkbook.ChangeLink Name:="HeatSinkExtWallMount_t.xlsx", NewName:= _

        "C:\LV Vault\NB\NBP000083_WallMount_HeatsinkExternal\Option2\HeatSinkExtWallMount_2.xlsx" _

        , Type:=xlExcelLinks

End Sub

Working Solidworks macro that opens each solidworks file in an assembly that has a design table and updates the design table links.

Sub DesTblUpdate()

Dim swDoc As SldWorks.ModelDoc2

Dim swDocXt As SldWorks.ModelDocExtension

Dim DesTbl As SldWorks.DesignTable

Dim swAllDocs As EnumDocuments2

Dim FirstDoc As SldWorks.ModelDoc2

Dim dummy As Boolean

Dim NumDocsReturned As Long

Dim DocCount As Long

Dim DesTblCount As Long

Dim i As Long

Dim DoTheUpdate As Long

Dim sMsg As String

Dim swApp As SldWorks.SldWorks

Dim bDocWasVisible As Boolean

Set swApp = Application.SldWorks

Set swAllDocs = swApp.EnumDocuments2

Set FirstDoc = swApp.ActiveDoc

DocCount = 0

DesTblCount = 0

swAllDocs.Next 1, swDoc, NumDocsReturned

While NumDocsReturned <> 0

    Set swDocXt = swDoc.Extension

    If swDocXt.HasDesignTable Then

        DesTblCount = DesTblCount + 1

    End If

    swAllDocs.Next 1, swDoc, NumDocsReturned

    DocCount = DocCount + 1

Wend

sMsg = DocCount & " Documents, " & DesTblCount & " of which had design tables"

sMsg = sMsg & vbCrLf & vbCrLf & "Do you want to update all these tables?"

DoTheUpdate = MsgBox(sMsg, vbYesNo, "Update Design Tables?")

If DoTheUpdate = vbNo Then

    Exit Sub

End If

DocCount = 0

DesTblCount = 0

swAllDocs.Reset

swAllDocs.Next 1, swDoc, NumDocsReturned

While NumDocsReturned <> 0

    Set swDocXt = swDoc.Extension

    If swDocXt.HasDesignTable Then

        DesTblCount = DesTblCount + 1

        bDocWasVisible = swDoc.Visible

        swApp.ActivateDoc swDoc.GetPathName

        Set DesTbl = swDoc.GetDesignTable

        dummy = DesTbl.Attach

        dummy = DesTbl.UpdateTable(swDesignTableUpdateOptions_e.swUpdateDesignTableAll, True)

        DesTbl.Detach

        swDoc.Visible = bDocWasVisible

    End If

    swAllDocs.Next 1, swDoc, NumDocsReturned

    DocCount = DocCount + 1

Wend

swApp.ActivateDoc FirstDoc.GetPathName

End Sub

Thank you,

SolidworksApi macros