Comment valider par lots tous les hyperliens dans votre document Word via VBA

Partage maintenant:

Dans cet article, nous allons vous montrer un moyen automatique de valider rapidement par lots tous les hyperliens de votre document Word via VBA.

Un document Word peut contenir de nombreux liens hypertexte, voire des centaines. Parmi eux, certains sont des liens invalides qui ne vous conduisent pas à une page Web correcte. Ainsi, nous voulons vous offrir la possibilité de vérifier rapidement tous les liens d'un document via VBA.Valider par lots tous les hyperliens dans votre document Word

Installer et enregistrer une macro Word

  1. Tout d'abord, ouvrez l'éditeur VBA avec "Alt + F11".
  2. Cliquez ensuite sur le projet "Normal".
  3. Cliquez ensuite sur l'onglet "Insérer" dans le menu de la barre d'outils.
  4. Et choisissez "Module" dans le menu.Cliquez sur "Normal" -> Cliquez sur "Insérer" -> Cliquez sur "Module"
  5. Double-cliquez sur le module pour ouvrir l'espace d'édition et collez-y les codes suivants :
Function CheckURL(strURL As String) As Boolean
  Dim objDemand As Object
  Dim varResult As Variant
 
  On Error GoTo ErrorHandler
  Set objDemand = CreateObject("WinHttp.WinHttpRequest.5.1")
 
  With objDemand
    .Open "GET", strURL, False
    .Send
    varResult = .StatusText
  End With
 
  Set objDemand = Nothing
 
  If varResult = "OK" Then
    CheckURL = True
  Else
    CheckURL = False
  End If
 
ErrorHandler:
End Function

Sub ReturnURLCheck()
  Dim objLink As Hyperlink
  Dim strLinkText As String
  Dim strLinkAddress As String
  Dim strResult As String
  Dim nInvalidLink As Integer, nTotalLinks As Integer
  Dim objDoc As Document
 
  Application.ScreenUpdating = False
 
  Set objDoc = ActiveDocument
  nTotalLinks = objDoc.Hyperlinks.Count
  nInvalidLink = 0
 
  With objDoc
    For Each objLink In .Hyperlinks
      strLinkText = objLink.Range.Text
      strLinkAddress = objLink.Address
 
      If Not CheckURL(strLinkAddress) Then
        nInvalidLink = nInvalidLink + 1
        strResult = frmCheckURLs.txtShowResult.Text
        frmCheckURLs.txtShowResult.Text = strResult & nInvalidLink & ". Invalid Link Information:" & vbNewLine & _
                                          "Displayed Text: " & strLinkText & vbNewLine & _
                                           "Address: " & strLinkAddress & vbNewLine & vbNewLine
      End If
    Next objLink
 
    frmCheckURLs.txtTotalLinks.Text = nTotalLinks 
    frmCheckURLs.txtNumberOfInvalidLinks.Text = nInvalidLink
    frmCheckURLs.Show Modal
 
  End With
  Application.ScreenUpdating = True
End Sub

Sub HighlightInvalidLinks()
  Dim objLink As Hyperlink
  Dim strLinkAddress As String
  Dim strResult As String
  Dim objDoc As Document
 
  Set objDoc = ActiveDocument
 
  With objDoc
    For Each objLink In .Hyperlinks
      strLinkAddress = objLink.Address
 
      If Not CheckURL(strLinkAddress) Then
        objLink.Range.HighlightColorIndex = wdYellow
      End If
    Next objLink
  End With
End Sub
  1. Cliquez ensuite sur "Enregistrer".Coller les codes-> Cliquez sur "Enregistrer"
  2. Attribuez ensuite un bouton à la macro. Vous pouvez vous référer à l'article suivant pour des informations détaillées :

Comment supprimer le formatage des textes collés avec macro et VBA dans votre mot

Créer un formulaire utilisateur

Avec un formulaire utilisateur, vous pouvez clairement voir le nombre total de liens dans le document actuel, le nombre de liens invalides et plus de détails.

  1. Tout d'abord, cliquez à nouveau sur "Insérer" dans la barre d'outils. Mais cette fois, choisissez "UserForm".
  2. Appuyez ensuite sur « F4 » pour ouvrir la « Fenêtre des propriétés » dans le coin inférieur gauche. La taille de la fenêtre est réglable.
  3. Nommez maintenant le formulaire utilisateur « frmCheckURLs ».
  4. Définissez la légende sur "Vérifier les URL".
  5. Ensuite, définissez la police correctement.
  6. Cliquez ensuite sur le bouton "Boîte à outils" dans la barre d'outils.Cliquez sur "Insérer" -> Choisissez "UserForm" -> Cliquez sur "Fenêtre Propriétés" -> Définir "Nom", "Légende", "Police" -> Cliquez sur "Boîte à outils"
  7. Cliquez maintenant sur "Label" dans la boîte à outils. Utilisez la souris pour faire glisser une étiquette rectangulaire sur le formulaire utilisateur.
  8. Cliquez sur l'étiquette pour activer sa fenêtre de propriétés. Définissez le nom de l'étiquette sur "lblInvalidURLs" et la légende de l'étiquette sur "URL non valides :".
  9. Choisissez ensuite la police et la couleur de fond appropriées pour le texte de la légende de l'étiquette.Cliquez sur "Label" -> Set "Name", "Caption", "Font" et "ForeColor"
  10. Choisissez "Zone de texte" dans la boîte à outils et insérez une zone de texte dans le formulaire utilisateur. Ajustez sa taille.
  11. Définissez ensuite le nom de la zone de texte sur "txtShowResult".
  12. Définissez la police et la première couleur comme vous le souhaitez.
  13. Trouvez « MultiLine » et définissez-le sur « True ».
  14. Recherchez "Barres de défilement" et choisissez une barre verticale.Définir le nom de la zone de texte, la police, ForeColor -> Définir "MultiLine" sur "True" -> Choisissez "frmScrollBarsVertical"
  15. Créez ensuite deux autres étiquettes et zones de texte.
  16. Ensuite, nommez la première étiquette comme "lblTotalLinks" et définissez la légende comme "Total des liens dans ce document".
  17. Et nommez la deuxième étiquette comme "lblNumberOfInvalidLinks" et définissez la légende comme "Nombre de liens invalides".
  18. Nommez la première zone de texte comme "txtTotalLinks", et la seconde comme "txtNumberOfInvalidLinks".Créer deux autres étiquettes et zones de texte
  19. Ensuite, recherchez le contrôle du bouton de commande sur la boîte à outils. Créez deux boutons de commande, comme ci-dessous :Créer des boutons de commande
  20. Nommez le premier bouton "cmdbtnClose" et son texte de légende "Fermer".
  21. Nommez le deuxième bouton "btnCloseAndHighlightInvalidURLs" et son texte de légende "Close & Highlight Invalid URLs".
  22. Ensuite, double-cliquez sur le bouton "Fermer" et sur le bouton "Fermer et mettre en surbrillance les URL non valides" respectivement. Entrez les codes comme suit :Entrer des codes pour les boutons de commande

Exécutez la macro

Cliquez sur le bouton que vous affectez à la macro. Voici l'effet final :Effect

Vous pouvez voir des informations détaillées sur chaque lien défaillant dans la grande zone de texte de gauche. Et vous pouvez choisir de fermer directement le formulaire utilisateur ou de le fermer tout en mettant en surbrillance tous les liens rompus dans le document.

Gérez les problèmes de mots avec soin

Word est facilement sujet aux erreurs. Ainsi, il devient extrêmement important de réparer Word En effet, la plupart du temps, l'outil intégré ne vous sera pas d'une grande aide. Par conséquent, la meilleure solution consiste à vous procurer un outil de réparation tiers.

Introduction de l'auteur:

Vera Chen est une experte en récupération de données dans DataNumen, Inc., qui est le leader mondial des technologies de récupération de données, y compris réparation xlsx et pdf réparer les produits logiciels. Pour plus d'informations, visitez www.datanumen.com

Partage maintenant:

Les commentaires sont fermés.