1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| Private Sub Command11_Click()
CorrigerText = RichTextBox10.Text
'vérification s'il y a lieux d'utiliser Word pour effectuer une correction
If AppliOk = True Then 'le dico est disponible
If WordAppli.Application.CheckSpelling(CorrigerText) = True Then
MsgBox "Pas de faute détectée", vbInformation, "Information" 'il n'y a pas de corrections a faire
Exit Sub
End If
Else
Exit Sub
End If
'il y a une correction à faire
Dim OldTop As Long, DocuWord As Object
OldTop = WordAppli.Height
WordAppli.Top = -OldTop: WordAppli.WindowState = 0
WordAppli.Visible = True: WordAppli.Activate
'Copiez le contenu de la zone de texte dans le presse-papiers
Clipboard.Clear: Clipboard.SetText CorrigerText, vbCFText '
Set DocuWord = WordAppli.Documents.Add 'création d'un document
With DocuWord
.Content.Paste 'remplis le document avec le contenu du Presse-Papier
.Activate
'durant toute la correction, les lignes suivant .CheckSpelling sont en attentes
.CheckSpelling 'vérifie l'orthographe en ouvrant la boite de suggestion de correction
'Reprise du code après que l'utilisateur ai apporté des modifications
'utilise le presse-papiers pour actualiser le TextBox
.Content.Copy 'récupération de la correction
RichTextBox10.Text = Clipboard.GetText(vbCFText) ' actualiser le RichTextBox
'Ferme le document
.Saved = True 'pour évité d'avoir la fenêtre de demande d'enregistrement
.Close
End With
Set DocuWord = Nothing 'nettoyage
WordAppli.Visible = False: WordAppli.Top = OldTop
End Sub |
Partager