V tem članku vam bomo pokazali samodejni način za hitro paketno preverjanje veljavnosti vseh hiperpovezav v Wordovem dokumentu prek VBA.
Wordov dokument lahko vsebuje veliko hiperpovezav, celo na stotine. Med njimi so nekatere neveljavne povezave, ki vas ne pripeljejo do prave spletne strani. Zato vam želimo ponuditi način za hitro preverjanje vseh povezav v dokumentu prek VBA.
Namestite in shranite Wordov makro
- Najprej odprite urejevalnik VBA z »Alt+ F11«.
- Nato kliknite »Normal« projekt.
- Nato v meniju orodne vrstice kliknite zavihek »Vstavi«.
- In v meniju izberite »Modul«.
- Dvokliknite na modul, da odprete prostor za urejanje in tja prilepite naslednje kode:
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
- Nato kliknite »Shrani«.
- Nato dodelite gumb za makro. Za podrobnejše informacije se lahko obrnete na naslednji članek:
Kako odstraniti oblikovanje prilepljenih besedil z makro in VBA v besedi
Ustvari uporabniški obrazec
Z uporabniškim obrazcem lahko jasno vidite skupno število povezav v trenutnem dokumentu, število neveljavnih povezav in več podrobnosti.
- Najprej znova kliknite »Vstavi« v orodni vrstici. Toda tokrat izberite »Uporabniški obrazec«.
- Nato pritisnite »F4«, da odprete »Okno z lastnostmi« v spodnjem levem kotu. Velikost okna je nastavljiva.
- Uporabniški obrazec zdaj poimenujte »frmCheckURLs«.
- Nastavite naslov kot »Preveri URL-je«.
- Nato pravilno nastavite pisavo.
- Nato v orodni vrstici kliknite gumb »Orodjarna«.
- Zdaj kliknite »Oznaka« v orodni vrstici. Z miško povlecite pravokotno oznako na uporabniški obrazec.
- Kliknite oznako, da aktivirate okno njenih lastnosti. Nastavite ime oznake na »lblInvalidURLs« in napis oznake na »Neveljavni URL-ji:«.
- Nato izberite ustrezno pisavo in prednjo barvo za besedilo napisa etikete.
- V orodni vrstici izberite »Besedilno polje« in v uporabniški obrazec vstavite besedilno polje. Prilagodite njegovo velikost.
- Nato nastavite ime besedilnega polja kot »txtShowResult«.
- Nastavite pisavo in predbarvo po želji.
- Poiščite »MultiLine« in nastavite »True«.
- Poiščite »Drsne vrstice« in izberite navpično vrstico.
- Nato ustvarite še dve oznaki in besedilni polji.
- Nato poimenujte prvo oznako kot »lblTotalLinks« in nastavite naslov kot »Skupno število povezav v tem dokumentu«.
- Drugo oznako poimenujte kot »lblNumberOfInvalidLinks« in nastavite naslov kot »Število neveljavnih povezav«.
- Poimenujte prvo besedilno polje kot »txtTotalLinks«, drugo pa kot »txtNumberOfInvalidLinks«.
- Nato poiščite kontrolnik ukaznega gumba v orodjarni. Ustvarite dva ukazna gumba, na primer spodaj:
- Poimenujte prvi gumb kot »cmdbtnClose«, besedilo njegovega naslova pa kot »Close«.
- Poimenujte drugi gumb kot »btnCloseAndHighlightInvalidURLs«, besedilo njegovega naslova pa kot »Close & Highlight Invalid URLs«.
- Nato dvakrat kliknite gumb »Zapri« oziroma gumb »Zapri in označi neveljavne URL-je«. Vnesite kode na naslednji način:
Zaženite makro
Kliknite gumb, ki ga dodelite makru. Tukaj je končni učinek:
Podrobne informacije o vsaki neuspeli povezavi si lahko ogledate v levem velikem besedilnem polju. Izberete lahko neposredno zapiranje uporabniškega obrazca ali pa ga zaprete, medtem ko označite vse nedelujoče povezave v dokumentu.
Previdno obravnavajte težave z besedami
Word je zlahka nagnjen k napakam. Tako postane izredno pomembno, popraviti Word pravilno. Vgrajeno orodje vam večinoma ne more kaj dosti pomagati. Zato je vaša najboljša izbira, da si priskrbite orodje za popravilo drugega proizvajalca.
Uvod avtorja:
Vera Chen je strokovnjakinja za obnovitev podatkov v DataNumen, Inc., ki je vodilna na svetu na področju tehnologij za obnovitev podatkov, vključno z popravilo xlsx in pdf popravilo programskih izdelkov. Za več informacij obiščite www.datanumen.com








