Buona giornata.
Potresti provare con una cosa di questo tipo:
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Titolo As String, Messaggio As String, Default As String, Pth As String
Const est As String = ".xlsm"
Titolo = "Salva File"
Messaggio = "Directory nella quale salvare il File."
Pth = Application.InputBox(Messaggio, Titolo, Default)
Pth = Pth & Cells(2, 1).Value & " " & Cells(2, 2).Value & " " & Cells(2, 3).Value & est
MsgBox Pth
ActiveWorkbook.SaveAs Filename:=Pth
End Sub
Da adattare alle tue reali necessità
Giuseppe
Windows XP - Excel 2000
Windows 10 - Excel 2013