Šiame straipsnyje parodysime automatinį būdą, kaip greitai paketiniu būdu patvirtinti visus „Word“ dokumento hipersaitus per VBA.
Word dokumente gali būti daug hipersaitų, net šimtai. Kai kurios iš jų yra netinkamos nuorodos, kurios negali nukreipti jūsų į tinkamą tinklalapį. Taigi norime jums pasiūlyti būdą, kaip greitai patikrinti visas dokumento nuorodas per VBA.
Įdiekite ir išsaugokite „Word“ makrokomandą
- Pirmiausia atidarykite VBA redaktorių naudodami „Alt + F11“.
- Tada spustelėkite „Įprastas projektas“.
- Tada įrankių juostos meniu spustelėkite skirtuką „Įterpti“.
- Ir meniu pasirinkite „Modulis“.
- Dukart spustelėkite modulį, kad atidarytumėte redagavimo erdvę ir įklijuokite ten šiuos kodus:
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
- Toliau spustelėkite „Išsaugoti“.
- Tada priskirkite makrokomandos mygtuką. Norėdami gauti išsamios informacijos, galite peržiūrėti šį straipsnį:
Kaip pašalinti įklijuotų tekstų formatavimą naudojant makrokomandas ir VBA programoje „Word“.
Sukurkite vartotojo formą
Naudodami vartotojo formą galite aiškiai matyti bendrą nuorodų skaičių dabartiniame dokumente, netinkamų nuorodų skaičių ir daugiau informacijos.
- Pirmiausia įrankių juostoje dar kartą spustelėkite „Įterpti“. Tačiau šį kartą pasirinkite „Vartotojo forma“.
- Tada paspauskite „F4“, kad atidarytumėte „Ypatybių langą“ apatiniame kairiajame kampe. Lango dydis reguliuojamas.
- Dabar pavadinkite vartotojo formą kaip „frmCheckURLs“.
- Antraštę nustatykite kaip „Tikrinti URL“.
- Tada tinkamai nustatykite šriftą.
- Tada įrankių juostoje spustelėkite mygtuką „Įrankių dėžė“.
- Dabar įrankių juostoje spustelėkite „Etiketė“. Naudokite pelę, kad vilktumėte stačiakampę etiketę ant vartotojo formos.
- Spustelėkite etiketę, kad suaktyvintumėte jos nuosavybės langą. Nustatykite etiketės pavadinimą kaip „lblInvalidURLs“, o etiketės antraštę kaip „Netinkami URL:“.
- Tada pasirinkite tinkamą etiketės antraštės teksto šriftą ir priekinę spalvą.
- Įrankių lange pasirinkite „Teksto laukelis“ ir įterpkite teksto laukelį į vartotojo formą. Sureguliuokite jo dydį.
- Tada nustatykite teksto laukelio pavadinimą kaip „txtShowResult“.
- Nustatykite šriftą ir priekinę spalvą, kaip norite.
- Raskite „MultiLine“ ir nustatykite „True“.
- Raskite „Slinkties juostos“ ir pasirinkite vertikalią juostą.
- Tada sukurkite dar dvi etiketes ir teksto laukelius.
- Tada pavadinkite pirmąją etiketę kaip „lblTotalLinks“ ir nustatykite antraštę kaip „Visos nuorodos šiame dokumente“.
- Antrąją etiketę pavadinkite „lblNumberOfInvalidLinks“ ir antraštę nustatykite kaip „Netinkamų nuorodų skaičius“.
- Pirmąjį teksto laukelį pavadinkite „txtTotalLinks“, o antrąjį – „txtNumberOfInvalidLinks“.
- Tada įrankių dėžutėje raskite komandų mygtuko valdiklį. Sukurkite du komandų mygtukus, pvz., žemiau:
- Pirmąjį mygtuką pavadinkite „cmdbtnClose“, o jo antraštės tekstą – „Uždaryti“.
- Antrąjį mygtuką pavadinkite „btnCloseAndHighlightInvalidURLs“, o jo antraštės tekstą – „Uždaryti ir paryškinti netinkamus URL“.
- Tada dukart spustelėkite mygtuką „Uždaryti“ ir mygtuką „Uždaryti ir paryškinti netinkamus URL“. Įveskite kodus taip:
Paleiskite makrokomandą
Spustelėkite mygtuką, kurį priskiriate makrokomandai. Štai galutinis efektas:
Išsamią informaciją apie kiekvieną nepavykusią nuorodą galite pamatyti kairiajame dideliame teksto laukelyje. Be to, galite pasirinkti uždaryti vartotojo formą tiesiogiai arba uždaryti ją paryškindami visas sugadintas nuorodas dokumente.
Atidžiai tvarkykite „Word“ problemas
Word lengvai daro klaidas. Taigi tampa itin svarbu pataisyti Word teisingai. Dažniausiai integruotas įrankis negali jums tiek daug padėti. Todėl geriausias pasirinkimas yra įsigyti trečiosios šalies taisymo įrankį.
Autoriaus įvadas:
Vera Chen yra duomenų atkūrimo ekspertė DataNumen, Inc., kuri yra pasaulyje duomenų atkūrimo technologijų lyderė, įskaitant remontas xlsx bei pdf programinės įrangos gaminių taisymas. Norėdami gauti daugiau informacijos, apsilankykite WWW.datanumen.com








