I denne artikkelen vil vi vise deg en automatisk måte å raskt batchvalidere alle hyperkoblinger i Word-dokumentet ditt via VBA.
Et Word-dokument kan inneholde mange hyperkoblinger, hundrevis til og med. Blant dem er noen ugyldige lenker som ikke fører deg til en riktig nettside. Derfor ønsker vi å tilby deg måten å raskt sjekke alle lenker i et dokument via VBA.
Installer og lagre en Word-makro
- Først av alt, åpne VBA-editor med "Alt+ F11".
- Klikk deretter på "Normal" prosjekt.
- Klikk deretter på "Sett inn"-fanen på verktøylinjemenyen.
- Og velg "Modul" på menyen.
- Dobbeltklikk på modulen for å åpne redigeringsområdet og lim inn følgende koder der:
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
- Klikk deretter på "Lagre".
- Deretter tilordner du en knapp for makroen. Du kan se følgende artikkel for detaljert informasjon:
Slik fjerner du formateringen av limte tekster med makro og VBA i Word
Lag et brukerskjema
Med et brukerskjema kan du tydelig se totalt antall lenker i gjeldende dokument, antall ugyldige lenker og flere detaljer.
- Først klikker du på "Sett inn" på verktøylinjen igjen. Men denne gangen velger du "UserForm".
- Trykk deretter "F4" for å åpne "Egenskapsvindu" i nedre venstre hjørne. Vindusstørrelsen er justerbar.
- Gi nå brukerskjemaet navnet "frmCheckURLs".
- Angi bildetekst som "Sjekk nettadresser".
- Sett deretter fonten riktig.
- Klikk deretter på "Verktøykasse"-knappen på verktøylinjen.
- Klikk nå på "Etikett" på verktøykassen. Bruk musen til å dra en rektangeletikett på brukerskjemaet.
- Klikk på etiketten for å aktivere egenskapsvinduet. Angi etikettnavnet som "lblInvalidURLs", og etikettteksten som "Ugyldige URLs:".
- Velg deretter riktig font og forfarge for etiketttekstteksten.
- Velg "Tekstboks" på verktøykassen og sett inn en tekstboks på brukerskjemaet. Juster størrelsen.
- Sett deretter tekstboksnavnet som "txtShowResult".
- Still inn font og forfarge som ønsket.
- Finn "MultiLine", og sett den til "True".
- Finn "Rullefelt" og velg en vertikal linje.
- Deretter oppretter du ytterligere to etiketter og tekstbokser.
- Navngi deretter første etikett som "lblTotalLinks" og sett bildeteksten som "Total linker i dette dokumentet".
- Og navngi den andre etiketten som "lblNumberOfInvalidLinks" og angi bildeteksten som "Antall ugyldige lenker".
- Navngi den første tekstboksen som "txtTotalLinks", og den andre som "txtNumberOfInvalidLinks".
- Finn deretter kommandoknappkontroll på verktøykassen. Lag to kommandoknapper, for eksempel nedenfor:
- Navngi den første knappen som "cmdbtnClose", og dens bildetekst som "Close".
- Navngi den andre knappen som "btnCloseAndHighlightInvalidURLs", og dens bildetekst som "Close & Highlight Invalid URLs".
- Dobbeltklikk deretter på henholdsvis "Lukk"-knappen og "Lukk og marker ugyldige URL-er". Skriv inn koder som følger:
Kjør makroen
Klikk på knappen du tilordner makroen. Her er den endelige effekten:
Du kan se detaljert informasjon om hver mislykkede kobling i den store tekstboksen til venstre. Og du kan velge å lukke brukerskjemaet direkte eller lukke det mens du markerer alle ødelagte lenker i dokumentet.
Håndter Word-problemer forsiktig
Word er lett utsatt for feil. Dermed blir det ekstremt viktig å fikse Word riktig. Som oftest kan ikke det innebygde verktøyet hjelpe deg så mye. Derfor er det beste valget å skaffe deg et tredjeparts reparasjonsverktøy.
Forfatterintroduksjon:
Vera Chen er en datagjenopprettingsekspert innen DataNumen, Inc., som er verdensledende innen datagjenopprettingsteknologier, inkludert reparer xlsx og pdf reparere programvareprodukter. For mer informasjon besøk www.datanumen. Med








