MS word: une macro pour activer / désactiver certains paramètres de vérification

2

Quelle macro pourrait activer / désactiver certains paramètres d’épreuvage? (Malheureusement, l'enregistrement de macro n'enregistre pas le changement de réglage)

Je cherche un moyen d'activer / désactiver 2 paramètres d'épreuvage (en même temps):

  • vérifier l'orthographe en cours de frappe
  • marquer les erreurs de grammaire au fur et à mesure que vous tapez
Lisa
la source

Réponses:

5

Application.Options.CheckGrammarAsYouType & .CheckSpellingAsYouType est ce que vous recherchez.

Exemple:

Sub GrammarSpellingOn()
    Application.Options.CheckGrammarAsYouType = True
    Application.Options.CheckSpellingAsYouType = True
End Sub

Sub GrammarSpellingOff()
    Application.Options.CheckGrammarAsYouType = False
    Application.Options.CheckSpellingAsYouType = False
End Sub

Pour activer / désactiver à l'aide de la même macro, avec une fenêtre contextuelle indiquant le changement effectué:

Sub GrammarSpellingOnOff()
    If Application.Options.CheckGrammarAsYouType = True Or Application.Options.CheckSpellingAsYouType = True Then
        Application.Options.CheckGrammarAsYouType = False
        Application.Options.CheckSpellingAsYouType = False
        Call MsgBox("Grammar & Spell Checking turned OFF")
    Else
        Application.Options.CheckGrammarAsYouType = True
        Application.Options.CheckSpellingAsYouType = True
        Call MsgBox("Grammar & Spell Checking turned ON")
    End If
    Application.ScreenRefresh 'refresh to add/remove spellchecker underlines
End Sub
JollyMort
la source
2
Merci beaucoup! J'ai modifié votre réponse pour ajouter le reste du code afin de l'activer avec la même macro
Lisa
De rien! Est-ce que vous pensiez l'écrire comme basculer: "Application.Options.CheckGrammarAsYouType = pas Application.Options.CheckGrammarAsYouType" mais qui a dit que vous commenciez avec les deux? :)
JollyMort
la seule chose qui pourrait être améliorée est que nous ne savons pas quand il est allumé ou éteint (une alerte serait pratique!) car il faut un certain temps avant la mise à jour ou le texte doit être modifié pour supprimer les parties soulignées.
Lisa
1
d'accord, je n'avais pas vu votre édition auparavant, vous voulez donc qu'elle s'éteigne si l'une d'elles est allumée. Ajout d'une msgbox pour vous dire ce qui s'est passé;)
JollyMort
merci encore! Un dernier point: avez-vous une idée de comment effacer tout le soulignement? (Le texte doit être modifié ou rouvert pour le supprimer)
Lisa
0

Donc, je l'ai mis en place un peu différemment. Je l'utilise principalement lorsque j'écris des présentations contenant du code. J'ai assigné les macros aux clés et voici les deux macros:

Cela ignorera toutes les épreuves, donc supprime ces marqueurs agaçants de Word

    Sub CodeFont()
'
' CodeFont Macro
' Change font to differentiate code
'
    Selection.Font.Name = "Consolas"
    Selection.Font.Size = 11
    Selection.Font.ColorIndex = wdBlue
    Selection.NoProofing = True
End Sub

Et quand je veux revenir à la frappe "normale"

Sub Normal()
'
' Normal Macro
'
'
    Selection.Font.Name = "Times New Roman"
    Selection.Font.Size = 12
    Selection.Font.ColorIndex = wdBlack
    Selection.NoProofing = False
End Sub
chris m
la source