Macro Terminator (2/3)

La version 1 de terminator a la particularité d'être dangereuse car elle ne nous demande pas si l'on veut procéder effectivement à l'élimination des caractères.
Pour créer une version plus sûre de notre programme qui préviendrait d'erreurs de manipulation de la part de l'opérateur, nous allons insérer du code pour que la macro demande l'avis de l'utilisateur avant de procéder à l'éradication des caractères non voulus.

Voici le code de terminator2.
Les lignes coloriées correspondent aux lignes qui ont été soit modifiées, soit ajoutées.

Sub terminator2()
 ' terminator Macro
 ' tue espace
  reponse = MsgBox("Voulez-vous vraiement lancer le terminator ?", vbYesNo,"Avertissement")
  If (reponse = vbYes) Then
  Selection.Find.ClearFormatting
   Selection.Find.Replacement.ClearFormatting
  With Selection.Find
  .Text = " "
  .Replacement.Text = ""
  .Forward = True
  .Wrap = wdFindContinue
  .Format = False
  .MatchCase = False
  .MatchWholeWord = False
  .MatchWildcards = False
  .MatchSoundsLike = False
  .MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
 
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "^#"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
 
end if
 
End Sub

A la ligne 1, on a donné le nom terminator2 à cette macro.
Aux lignes 4-5 : la macro affiche le message "Voulez-vous vraiment lancer le terminator?" en affichant "Oui" ou "Non" comme possibilité de réponse.
SI l'utilisateur choisit la réponse "Oui", la variable reponse prendra la valeur vbYes. Si l'utilisateur choisit la réponse "Non", la variable reponse prendra la valeur vbNo.
Note : SI cette macro s'exécute dans un sytème anglais, le message affiché sera toujours en français. Par contre, les choix de réponses seront "Yes" et "No". Et quelque soit le système de langue, la variable réponse ser soit vbYes soit vbNo.

On vient en quelque sorte d'ajouter une instruction conditionnelle qui permet d'exécuter du code sous certaines conditions.

reponse = MsgBox("Voulez-vous vraiement lancer le terminator ?", vbYesNo, "Avertissement")
If (reponse = vbYes) Then


End if

Au final, nous obtiendrons la macro suivante :