I have attached a small Excel file incorporating a wizard on Sheet1, where data are entered by the user and are transferred to the appropriate cells in Sheet1, Sheet2, and Sheet3.

The following code is adapted the code from J. Walkenbach's book and, with my limited VBA skills, I'm stumped on the following point:

right now the wizard text boxes are reset each time the wizard is restarted. How do I reprogram this, so that the last entered values are retained so that the user does not have to reenter everything?

Code:

Option Explicit 

Private Sub CancelButton_Click()
Dim Msg As String
Dim Ans As Integer
Msg = "Cancel the wizard?"
Ans = MsgBox(Msg, vbQuestion + vbYesNo, APPNAME)
If Ans = vbYes Then Unload Me
End Sub

Public Sub UserForm1_Initialize()
MultiPage1.Value = 0
UpdateControls
End Sub

Sub UpdateControls()
Select Case MultiPage1.Value
Case 0
BackButton.Enabled = False
NextButton.Enabled = True
Case MultiPage1.Pages.Count - 1
BackButton.Enabled = True
NextButton.Enabled = False
Case Else
BackButton.Enabled = True
NextButton.Enabled = True
End Select
End Sub

Private Sub BackButton_Click()
MultiPage1.Value = MultiPage1.Value - 1
UpdateControls
End Sub
Private Sub NextButton_Click()
MultiPage1.Value = MultiPage1.Value + 1
UpdateControls
End Sub
 
Private Sub FinishButton_Click()
With ActiveWorkbook
.Worksheets("sheet1").Range("b3").Value = Me.TextBox1.Value
.Worksheets("sheet2").Range("a9").Value = Me.TextBox2.Value
.Worksheets("sheet3").Range("a9").Value = Me.TextBox3.Value
End With
Unload Me
End Sub
 
Private Sub UserForm_Click()
End Sub
Your help is greatly appreciated.