Ebben a cikkben bemutatunk egy automatikus módot a Word-dokumentumban található hiperhivatkozások gyors kötegelt ellenőrzésére VBA-n keresztül.
Egy Word-dokumentum sok hiperhivatkozást tartalmazhat, akár több százat is. Ezek közül néhány érvénytelen hivatkozás, amely nem vezet el a megfelelő weboldalra. Ezért szeretnénk felajánlani Önnek a módját, hogy VBA-n keresztül gyorsan ellenőrizze a dokumentumban lévő összes hivatkozást.
Word makró telepítése és mentése
- Először nyissa meg a VBA-szerkesztőt az „Alt+ F11” gombbal.
- Ezután kattintson a „Normál” projektre.
- Ezután kattintson a „Beszúrás” fülre az eszköztár menüjében.
- És válassza a „Modul” lehetőséget a menüben.
- Kattintson duplán a modulra a szerkesztőterület megnyitásához, és illessze be oda a következő kódokat:
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
- Ezután kattintson a „Mentés” gombra.
- Ezután rendeljen hozzá egy gombot a makróhoz. Részletes információkért olvassa el a következő cikket:
Hogyan lehet eltávolítani a beillesztett szövegek formázását makróval és VBA-val a Wordben
Hozzon létre egy felhasználói űrlapot
A felhasználói űrlap segítségével egyértelműen láthatja az aktuális dokumentumban található hivatkozások teljes számát, az érvénytelen hivatkozások számát és további részleteket.
- Először kattintson ismét a „Beszúrás” gombra az eszköztáron. De ezúttal válassza a „Felhasználói űrlap” lehetőséget.
- Ezután nyomja meg az „F4” gombot a „Tulajdonságok ablak” megnyitásához a bal alsó sarokban. Az ablak mérete állítható.
- Most nevezze el a felhasználói űrlapot „frmCheckURLs” néven.
- Állítsa be a feliratot „URL-ek ellenőrzése”-re.
- Ezután állítsa be megfelelően a betűtípust.
- Ezután kattintson az „Eszköztár” gombra az eszköztáron.
- Most kattintson a „Címke” elemre az eszköztárban. Az egérrel húzzon egy téglalap címkét a felhasználói űrlapon.
- Kattintson a címkére a tulajdonság ablak aktiválásához. Állítsa be a címke nevét „lblInvalidURLs”-re, a címke feliratát pedig „Invalid URLs:”-re.
- Ezután válassza ki a megfelelő betűtípust és előszínt a címke feliratának szövegéhez.
- Válassza a „Szövegdoboz” lehetőséget az eszköztárban, és szúrjon be egy szövegdobozt a felhasználói űrlapba. Állítsa be a méretét.
- Ezután állítsa be a szövegmező nevét „txtShowResult”-ként.
- Állítsa be a kívánt betűtípust és előszínt.
- Keresse meg a „MultiLine” elemet, és állítsa „True”-ra.
- Keresse meg a „Gördítősávokat”, és válasszon egy függőleges sávot.
- Ezután hozzon létre két további címkét és szövegmezőt.
- Ezután nevezze el az első címkét „lblTotalLinks”-nek, és állítsa be a feliratot „Összes hivatkozás ebben a dokumentumban”.
- A második címkét pedig nevezze el „lblNumberOfInvalidLinks”-nek, és állítsa be a feliratot „Érvénytelen linkek száma”-ra.
- Az első szövegmező neve „txtTotalLinks”, a második pedig „txtNumberOfInvalidLinks”.
- Ezután keresse meg a parancsgombos vezérlőt az eszköztáron. Hozzon létre két parancsgombot, például az alábbiakat:
- Az első gomb neve „cmdbtnClose”, a felirat szövege pedig „Bezárás”.
- Nevezze el a második gombot „btnCloseAndHighlightInvalidURLs”-nek, a felirat szövegét pedig „Close & Highlight Invalid URLs”-nek.
- Ezután kattintson duplán a „Bezárás” és az „Érvénytelen URL-ek bezárása és kiemelése” gombra. Írja be a kódokat az alábbiak szerint:
Futtassa a Makrót
Kattintson a makróhoz rendelt gombra. Íme a végső hatás:
A bal oldali nagy szövegmezőben részletes információkat talál az egyes sikertelen hivatkozásokról. Kiválaszthatja, hogy közvetlenül bezárja-e a felhasználói űrlapot, vagy bezárja azt, miközben kiemeli a dokumentumban lévő összes hibás hivatkozást.
Óvatosan kezelje a szóproblémákat
A Word könnyen hajlamos a hibákra. Így rendkívül fontossá válik javítsa ki a Word-öt helyesen. Most A beépített eszköz gyakran nem tud sokat segíteni. Ezért a legjobb választás egy harmadik féltől származó javítóeszköz beszerzése.
Szerző Bevezetés:
Vera Chen adat-helyreállítási szakértő DataNumen, Inc., amely világelső az adat-helyreállítási technológiák területén, beleértve javítás xlsx és a pdf javító szoftvertermékek. További információért látogasson el www.datanumen.com








