You may use Worksheet_PivotTableUpdate Event to achieve that.
To do so, follow these steps...
Right Click on Sheet Tab Name which has the Pivot Table and choose View Code.
Copy the code given below and paste it into the opened code window.
Close the VB Editor and save your workbook as Macro-Enabled Workbook.
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
Dim Ans As VbMsgBoxResult
On Error GoTo Skip
Application.ScreenUpdating = False
Application.EnableEvents = False
Ans = MsgBox("Are sure that you want to refresh the Pivot Table?", vbQuestion + vbYesNo, "Confirm Please!")
If Ans = vbNo Then
MsgBox "Pivot Table is not refreshed.", vbExclamation
MsgBox "Pivot Table has been refreshed successfully.", vbInformation
Application.EnableEvents = True
Application.ScreenUpdating = True
As per the above event code, when you try to refresh the Pivot Table, it will prompt you to confirm.
If you click on Yes, the Pivot Table will get refreshed successfully but if you click on No, the Pivot Table will not get refreshed.
Let me know if this is what you were trying to achieve.