il te suffit de déplacer ton code dans l'événement Commandbutton_click et supprimer Textbox1_change
Private Sub CommandButton1_Click()
If TextBox1 = "1234" Then
Sheets("feuil3").Visible = True
Else
MsgBox "Mot de passe invalide", vbCritical, _
"Mot de passe"
End If
TextBox1 = ""
Unload Me
End Sub