У цій статті ми покажемо вам автоматичний спосіб швидкої пакетної перевірки всіх гіперпосилань у вашому документі Word через VBA.
Документ Word може містити багато гіперпосилань, навіть сотні. Серед них є деякі недійсні посилання, які не ведуть до правильної веб-сторінки. Таким чином, ми хочемо запропонувати вам спосіб швидкої перевірки всіх посилань у документі через VBA.
Встановіть та збережіть макрос Word
- Перш за все, відкрийте редактор VBA за допомогою “Alt + F11”.
- Потім натисніть «Звичайний» проект.
- Потім натисніть вкладку «Вставити» в меню панелі інструментів.
- І виберіть «Модуль» у меню.
- Двічі клацніть на модулі, щоб відкрити простір для редагування, і вставте туди такі коди:
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
- Далі натисніть «Зберегти».
- Потім призначте кнопку для макросу. Ви можете звернутися до наступної статті для отримання детальної інформації:
Як видалити форматування вставлених текстів за допомогою макросів та VBA у вашому слові
Створіть форму користувача
За допомогою форми користувача ви можете чітко бачити загальну кількість посилань у поточному документі, кількість недійсних посилань та інші деталі.
- По-перше, ще раз натисніть «Вставити» на панелі інструментів. Але цього разу виберіть «UserForm».
- Потім натисніть “F4”, щоб відкрити “Вікно властивостей” у нижньому лівому куті. Розмір вікна регулюється.
- Тепер назвіть форму користувача як “frmCheckURLs”.
- Встановіть підпис як “Перевірити URL-адреси”.
- Потім правильно встановіть шрифт.
- Потім натисніть кнопку «Панель інструментів» на панелі інструментів.
- Тепер натисніть «Мітка» на панелі інструментів. За допомогою миші перетягніть мітку прямокутника на форму користувача.
- Клацніть на ярлик, щоб активувати його вікно властивостей. Встановіть назву мітки як “lblInvalidURLs”, а підпис мітки - “Недійсні URL-адреси:”.
- Далі виберіть правильний шрифт та інтерфейс для тексту підпису етикетки.
- Виберіть «Текстове поле» на панелі інструментів і вставте текстове поле у форму користувача. Відрегулюйте його розмір.
- Потім встановіть назву текстового поля як “txtShowResult”.
- Встановіть шрифт і вивіску за бажанням.
- Знайдіть “MultiLine” і встановіть для “True”.
- Знайдіть “смуги прокрутки” і виберіть вертикальну смугу.
- Далі створіть ще дві мітки та текстові поля.
- Потім назвіть першу мітку «lblTotalLinks» і встановіть підпис як «Всього посилань у цьому документі».
- І назвіть другу мітку як “lblNumberOfInvalidLinks” і встановіть підпис як “Кількість недійсних посилань”.
- Назвіть перше текстове поле як “txtTotalLinks”, а друге як “txtNumberOfInvalidLinks”.
- Потім знайдіть елемент керування за допомогою командної кнопки на панелі інструментів. Створіть дві командні кнопки, наприклад, нижче:
- Назвіть першу кнопку "cmdbtnClose", а текст її підпису - "Закрити".
- Назвіть другу кнопку "btnCloseAndHighlightInvalidURLs", а текст її підпису - "Закрити та виділити недійсні URL-адреси".
- Далі двічі клацніть на кнопці «Закрити» та «Закрити та виділити недійсні URL-адреси» відповідно. Введіть коди наступним чином:
Запустіть макрос
Натисніть кнопку, призначену макросу. Ось остаточний ефект:
Ви можете побачити детальну інформацію про кожне невдале посилання у великому текстовому полі ліворуч. І ви можете закрити форму користувача безпосередньо або закрити, виділивши всі непрацюючі посилання в документі.
Ретельно обробляйте проблеми зі словами
Word легко схильний до помилок. Таким чином це стає надзвичайно важливим для виправити Word правильно. Мost того часу вбудований інструмент не може тобі настільки допомогти. Тому ваш головний вибір - це придбати сторонній інструмент для ремонту.
Вступ автора:
Віра Чень є експертом з відновлення даних у DataNumen, Inc., яка є світовим лідером у галузі технологій відновлення даних, в тому числі ремонт xlsx та pdf ремонт програмних продуктів. Для отримання додаткової інформації відвідайте WWW.datanumen.com








