Гіперпосилання VBA

Цей підручник VBA охоплює різні способи роботи з гіперпосиланнями у VBA.

Гіперпосилання VBA

За допомогою VBA ви можете додавати гіперпосилання, видаляти гіперпосилання, створювати електронні листи за допомогою гіперпосилань та відкривати файли за допомогою гіперпосилань у VBA.

Додайте гіперпосилання з VBA

Метод Hyperlinks.Add додає гіперпосилання до комірки за допомогою VBA.

Наступний код додасть гіперпосилання до комірки А1:

123 Sub AddHyperlinkToCell ()ActiveSheet.Hyperlinks.Add Range ("A1"), Адреса: = "https://www.automateexcel.com/excel/"End Sub

Результат такий:

Додавання тексту до дисплея за допомогою VBA

Ви можете додати акуратний зручний для відображення текст для відображення у своєму гіперпосиланні за допомогою VBA. Якщо ви використовували функціонал аркуша, ви б вставили гіперпосилання, а потім додали текст для відображення у наданому діалоговому вікні.

Код нижче демонструє, як додати текст для відображення до вашого гіперпосилання за допомогою VBA:

123 ПідтекстToDisplayForHyperlink ()ActiveSheet.Hyperlinks.Add Range ("A1"), Адреса: = "https://www.automateexcel.com/excel/", TextToDisplay: = "Автоматизувати Excel"End Sub

Результат такий:

Додавання підказки до екрана з VBA

Ви можете додати підказку до свого гіперпосилання, яку глядач побачить, коли наведе курсор на посилання.

У наведеному нижче коді показано, як додати підказку до свого гіперпосилання за допомогою VBA:

123 Sub ScreenTipForHyperlink ()ActiveSheet.Hyperlinks.Add Range ("A1"), Адреса: = "https://www.automateexcel.com/excel/", TextToDisplay: = "Автоматизувати Excel", ScreenTip: = "Це посилання для автоматизації Excel"End Sub

Результат такий:

Видалити гіперпосилання за допомогою VBA

Метод Hyperlinks.Delete можна використовувати для видалення гіперпосилання з комірки.

Наступний код видалить гіперпосилання з комірки A1 та текст у комірці.

Зауважте, що просто видалення гіперпосилання не видаляє сам текст, тому якщо ви хочете видалити текст, вам також доведеться скористатися методом Очистити.

1234 Sub DeleteHyperlinkinCell ()Діапазон ("A1"). Гіперпосилання. ВидалитиДіапазон ("A1"). ОчиститиEnd Sub

Видаліть усі гіперпосилання на аркуші

Ви також можете видалити всі гіперпосилання на своєму аркуші за допомогою методу Hyperlinks.Delete.

Наступний код видалить усі гіперпосилання на першому аркуші у вашій книзі:

123 Sub RemoveAllHyperlinksInASheet ()ThisWorkbook.Sheets (1) .Hyperlinks.DeleteEnd Sub

Слідкуйте за гіперпосиланням веб -сайту за допомогою VBA

Наступний код дозволяє відкрити адресу веб -сайту в новому вікні у вашому браузері за допомогою методу FollowHyperlink у вашій книзі:

123 Sub FollowHyperlinkForWebsite ()Адреса ActiveWorkbook.FollowHyperlink: = "https://www.automateexcel.com/excel", NewWindow: = ПравдаEnd Sub

Перейдіть за гіперпосиланням до папки на диску

Наступний код відкриє папку ExcelFiles на робочому столі за допомогою методу FollowHyperlink:

123 Sub FollowHyperlinkForFolderOnDrive ()Адреса ActiveWorkbook.FollowHyperlink: = "C: \ Desktop \ ExcelFiles"End Sub

Перейдіть за гіперпосиланням на файл на диску

Наступний код відкриє файл Excel під назвою WorkbookOne у папці ExcelFiles на робочому столі за допомогою методу FollowHyperlink:

123 Sub FollowHyperlinkForFile ()Адреса ActiveWorkbook.FollowHyperlink: = "C: \ Desktop \ ExcelFiles \ WorkbookOne.xlsx", NewWindow: = TrueEnd Sub

Перейдіть до клітинки на іншому аркуші тієї самої книги

Ви можете додати гіперпосилання до комірки на одному аркуші, який перенесе вас на інший аркуш, у тій самій книзі з VBA. Скажімо, ви знаходитесь у Sheet1, клітині A1 вашої книги, і хочете вставити гіперпосилання на Sheet2, клітинку B2 тієї самої книги, для цього можна використовувати властивість SubAddress.

Наступний код демонструє, як це зробити:

123 Sub GoToAnotherCellInAnotherSheetInTheSameWorkbook ()ActiveSheet.Hyperlinks.Add Range ("A1"), Address: = "", SubAddress: = "'" & Sheet2.Name & "'! B2", TextToDisplay: = "Натисніть тут, щоб перейти до Sheet2, клітинка B2 та сама книга "End Sub

Відобразити всі гіперпосилання на робочому аркуші

Ви можете отримати доступ до колекції гіперпосилань та відобразити всі гіперпосилання на своєму аркуші в Проміжне вікно у редакторі VBA. Спочатку потрібно натиснути CTRL+G на клавіатурі або перейдіть до Перегляд> Проміжне вікно у редакторі VBE, щоб переглянути проміжне вікно.

Наступний код показує, як переглянути гіперпосилання на вашому аркуші у проміжному вікні:

1234567891011 Sub ShowAllTheHyperlinksInTheWorksheet ()Затемнити як робочий аркушВстановити ws = ThisWorkbook.Sheets (1)Для кожного lnk В ws.ГіперпосиланняНалагодження.Надрукувати lnk.адресДалі lnkEnd Sub

Результати відображаються у проміжному вікні.

Відображення всіх гіперпосилань у робочій книзі

Ви можете отримати доступ до колекції гіперпосилань, прокрутити та відобразити всі гіперпосилання у вашій книзі у вікні повідомлень.

Наступний код показує, як це зробити, і використовує вкладений цикл для цього:

1234567891011 Sub ShowAllTheHyperlinksInTheWorkbook ()Затемнити як робочий аркушДля кожного ws В ActiveWorkbook.WorksheetsДля кожного lnk В ws.ГіперпосиланняMsgBox lnk. АдресаДалі lnkНаступний wsEnd Sub

Використання методу FollowHyperlink для створення електронних листів

Ви також можете створювати електронні листи за допомогою методу FollowHyperlink.

Код нижче покаже вам, як створювати електронні листи за допомогою методу FollowHyperlink у VBA:

12345678 Sub SendEmailUsingHyperlink ()Затемнити msgLink як рядокmsgLink = "mailto:" & "[email protected]" & "?" & "subject =" & "Привіт" & "&" & "body =" & "Як справи?"ActiveWorkbook.FollowHyperlink (msgLink)End Sub

Результат такий:

Додавання гіперпосилання до автофігури в Excel

Ви можете додати гіперпосилання до автоматичної форми в Excel, щоб користувач, натиснувши на фігуру, потрапив на адресу веб -сайту.

Наступний код створює округлий прямокутник, додає текст до прямокутника та додає гіперпосилання до прямокутника:

12345678910111213 Додаткове додаванняAHyperlinkToAShape ()Затемнити myShape як формуВстановити myDocument = Робочі аркуші ("Аркуш1")Встановити myShape = myDocument.Shapes.AddShape (msoShapeRoundedRectangle, 100, 100, 90, 30)За допомогою myShape.TextFrame.Characters.Text = "Автоматизувати Excel"Закінчити зActiveSheet.Hyperlinks.Add Anchor: = myShape, Адреса: = "https://www.automateexcel.com/excel"End Sub

Результат такий:

Вставлення формули гіперпосилання в клітинку за допомогою VBA

Припустимо, у вас є заголовок до комірки А4 і посилання для публікації у комірці В4, як показано на зображенні нижче.

Коротко нагадуємо про синтаксис формули гіперпосилання аркуша:

HYPERLINK (розташування посилання, [дружнє_ім'я])

link_location - це посилання на документ, файл, місце у книзі або на веб -сайті.

дружнє_ім'я - (Необов’язково) - Текстове або числове значення, яке відображається у комірці.

У клітинці С4 ви хочете додати гіперпосилання з дружним текстом для відображення, тепер зазвичай ви повинні ввести формулу = HYPERLINK (В4, А4) у С4, щоб отримати наступне:

Натомість можна використати VBA для досягнення того самого результату та вставити цю формулу у клітинку на Sheet1 із таким кодом:

123 Sub InsertHyperlinkFormulaInCell ()ActiveWorkbook.Worksheets ("Sheet1"). Діапазон ("C4"). Formula = "= гіперпосилання (B4, A4)"End Sub

Додавання гіперпосилання до кнопки в Access

VBA також дозволяє працювати з гіперпосиланнями в Access. Скажімо, у нас є кнопка на формі, і коли користувач натискає цю кнопку, ми хочемо, щоб її перенесли на веб -сайт. Один із способів зробити це - через метод Application.FollowHyperlink.

У нас є наш зразок форми з кнопкою під назвою buttonOne показана нижче.

Код цієї кнопки буде таким:

12345 Приватна кнопка підпискиOne_Click ()Application.FollowHyperlink ("https://www.automateexcel.com/excel/")End Sub

Створення гіперпосилання з виділення в Word

Ви також можете працювати з гіперпосиланнями у Word VBA.
Скажімо, у нас є текст Слово з написом «Натисніть тут, щоб потрапити на автоматизацію веб -сайту Excel», який вибрано, як показано нижче.

Щоб перетворити цей текст у гіперпосилання за допомогою VBA, можна скористатися таким кодом:

123 Private Sub TurnASelectionIntoAHyperlink ()ActiveDocument.Hyperlinks.Add Anchor: = Selection.Range, Address: = "https://www.automateexcel.com/excel/", ScreenTip: = "Натисніть тут, будь ласка", Target: = NewWindowEnd Sub

Результат такий:

Ви допоможете розвитку сайту, поділившись сторінкою з друзями

wave wave wave wave wave