Hypertextové odkazy VBA

Tento výukový program VBA popisuje různé způsoby práce s hypertextovými odkazy ve VBA.

Hypertextové odkazy VBA

Pomocí VBA můžete přidávat hypertextové odkazy, odstraňovat hypertextové odkazy, vytvářet e -maily pomocí hypertextových odkazů a otevírat soubory pomocí hypertextových odkazů ve VBA.

Přidejte hypertextový odkaz pomocí VBA

Metoda Hyperlinks.Add přidá hypertextový odkaz na buňku pomocí VBA.

Následující kód přidá hypertextový odkaz do buňky A1:

123 Sub AddHyperlinkToCell ()ActiveSheet.Hyperlinks.Add Range ("A1"), Address: = "https://www.automateexcel.com/excel/"End Sub

Výsledek je:

Přidání textu do zobrazení pomocí VBA

Pomocí VBA můžete přidat úhledný uživatelsky přívětivý text, který se zobrazí ve vašem hypertextovém odkazu. Pokud jste použili funkci listu, vložili byste hypertextový odkaz a poté přidali text, který se zobrazí v poskytnutém dialogovém okně.

Níže uvedený kód ukazuje, jak přidat text k zobrazení hypertextového odkazu pomocí VBA:

123 PodtextToDisplayForHyperlink ()ActiveSheet.Hyperlinks.Add Range ("A1"), Address: = "https://www.automateexcel.com/excel/", TextToDisplay: = "Automatizovat Excel"End Sub

Výsledek je:

Přidání ScreenTipu s VBA

K hypertextovému odkazu můžete přidat ScreenTip, který se divákovi zobrazí, když na odkaz najede myší.

Níže uvedený kód ukazuje, jak přidat ScreenTip do hypertextového odkazu pomocí VBA:

123 Sub ScreenTipForHyperlink ()ActiveSheet.Hyperlinks.Add Range ("A1"), Address: = "https://www.automateexcel.com/excel/", TextToDisplay: = "Automate Excel", ScreenTip: = "This is the link for Automate Excel"End Sub

Výsledek je:

Odstranit hypertextový odkaz pomocí VBA

K odstranění hypertextového odkazu z buňky lze použít metodu Hyperlinks.Delete.

Následující kód odstraní hypertextový odkaz z buňky A1 a textu v buňce.

Pamatujte, že pouhým odstraněním hypertextového odkazu se neodstraní samotný text, a proto pokud chcete text odstranit, musíte také použít metodu Vymazat.

1234 Sub DeleteHyperlinkinCell ()Rozsah („A1“). Hypertextové odkazy. OdstranitRozsah („A1“). JasnéEnd Sub

Odstraňte všechny hypertextové odkazy v listu

Můžete také odstranit všechny hypertextové odkazy v listu pomocí metody Hyperlinks.Delete.

Následující kód odstraní všechny hypertextové odkazy v prvním listu v sešitu:

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

Sledujte hypertextový odkaz na web pomocí VBA

Následující kód vám umožňuje otevřít adresu webu v novém okně v prohlížeči pomocí metody FollowHyperlink ve vašem sešitu:

123 Sub FollowHyperlinkForWebsite ()ActiveWorkbook.FollowHyperlink Adresa: = "https://www.automateexcel.com/excel", NewWindow: = TrueEnd Sub

Sledujte hypertextový odkaz na složku na vašem disku

Následující kód otevře složku s názvem ExcelFiles na ploše pomocí metody FollowHyperlink:

123 Sub FollowHyperlinkForFolderOnDrive ()ActiveWorkbook.FollowHyperlink Adresa: = "C: \ Desktop \ ExcelFiles"End Sub

Sledujte hypertextový odkaz na soubor na vašem disku

Následující kód otevře soubor aplikace Excel s názvem WorkbookOne ve složce s názvem ExcelFiles na ploše pomocí metody FollowHyperlink:

123 Sub FollowHyperlinkForFile ()ActiveWorkbook.FollowHyperlink Adresa: = "C: \ Desktop \ ExcelFiles \ WorkbookOne.xlsx", NewWindow: = TrueEnd Sub

Přejít na buňku v jiném listu ve stejném sešitu

Do buňky v jednom listu můžete přidat hypertextový odkaz, který vás přenese na jiný list, ve stejném sešitu s VBA. Řekněme, že jste na listu 1, buňce A1 sešitu a chcete vložit hypertextový odkaz na list 2, buňka B2 stejného sešitu, můžete k tomu použít vlastnost SubAddress.

Následující kód ukazuje, jak to provést:

123 Sub GoToAnotherCellInAnotherSheetInTheSameWorkbook ()ActiveSheet.Hyperlinks.Add Range ("A1"), Address: = "", SubAddress: = "'" & Sheet2.Name & "'! B2", TextToDisplay: = "Click here to go to Sheet2, cell B2 of the stejný sešit “End Sub

Zobrazit všechny hypertextové odkazy v listu

Můžete přistupovat ke kolekci hypertextových odkazů a zobrazit všechny hypertextové odkazy na listu v souboru Mezilehlé okno v editoru VBA. Nejprve musíte stisknout CTRL+G na klávesnici nebo přejděte na Zobrazit> Mezilehlé okno v editoru VBE, abyste zobrazili přechodné okno.

Následující kód ukazuje, jak zobrazit hypertextové odkazy na listu v mezilehlém okně:

1234567891011 Sub ShowAllTheHyperlinksInTheWorksheet ()Dim ws As WorksheetNastavit ws = ThisWorkbook.Sheets (1)Za každý lnk v ws.HyperlinksDebug.Print lnk.AddressDalší lnkEnd Sub

Výsledky jsou zobrazeny v přechodném okně.

Zobrazit všechny hypertextové odkazy v sešitu

Můžete přistupovat ke kolekci hypertextových odkazů, procházet a zobrazovat všechny hypertextové odkazy ve vašem sešitu ve schránce zpráv.

Následující kód ukazuje, jak to udělat, a používá vnořenou smyčku, aby toho dosáhl:

1234567891011 Sub ShowAllTheHyperlinksInTheWorkbook ()Dim ws As WorksheetZa každý ws v ActiveWorkbook.WorksheetsZa každý lnk v ws.HyperlinksMsgBox lnk.AddressDalší lnkDalší wsEnd Sub

Použití metody FollowHyperlink k vytváření e -mailů

E -maily můžete také vytvářet pomocí metody FollowHyperlink.

Níže uvedený kód vám ukáže, jak vytvářet e -maily pomocí metody FollowHyperlink ve VBA:

12345678 Sub OdeslatE -mailUsingHyperlink ()Dim msgLink As StringmsgLink = "mailto:" & "[email protected]" & "?" & "subject =" & "Dobrý den" & "&" & "body =" & "Jak se máte?"ActiveWorkbook.FollowHyperlink (msgLink)End Sub

Výsledek je:

Přidání hypertextového odkazu na automatický tvar v aplikaci Excel

Na Autoshape v Excelu můžete přidat hypertextový odkaz, takže když uživatel klikne na tvar, dostane se na adresu webové stránky.

Následující kód vytvoří zaoblený obdélník, přidá text do obdélníku a přidá hypertextový odkaz na obdélník:

12345678910111213 SubAddingAHyperlinkToAShape ()Dim myShape As ShapeNastavit myDocument = pracovní listy ("List1")Nastavit myShape = myDocument.Shapes.AddShape (msoShapeRoundedRectangle, 100, 100, 90, 30)S myShape.TextFrame.Characters.Text = "Automatizovat Excel"Konec sActiveSheet.Hyperlinks.Add Anchor: = myShape, Address: = "https://www.automateexcel.com/excel"End Sub

Výsledek je:

Vložení vzorce hypertextového odkazu do buňky pomocí VBA

Řekněme, že máte název příspěvku v buňce A4 a odkaz na příspěvek v buňce B4, jak je znázorněno na obrázku níže.

Rychlé připomenutí syntaxe vzorce hypertextového odkazu v listu je:

HYPERLINK (umístění_ odkazu, [název_přátelského])

link_location - toto je odkaz na dokument, soubor, místo v sešitu nebo na online webu.

přátelské jméno - (Volitelný) - Text nebo číselná hodnota, která je zobrazena v buňce.

V buňce C4 chcete přidat hypertextový odkaz s popisným textem k zobrazení, nyní obvykle zadáte vzorec = HYPERLINK (B4, A4) do C4, abyste získali následující:

Místo toho můžete použít VBA k dosažení stejného výsledku a vložit tento vzorec do buňky na List1 s následujícím kódem:

123 Dílčí vložkaHyperlinkFormulaInCell ()ActiveWorkbook.Worksheets ("Sheet1"). Range ("C4"). Formula = "= hyperlink (B4, A4)"End Sub

Přidání hypertextového odkazu na tlačítko v Accessu

VBA vám také umožňuje pracovat s hypertextovými odkazy v Accessu. Řekněme, že máme tlačítko ve formuláři, a když uživatel na toto tlačítko klikne, chceme, aby byli přesměrováni na web. Jedním ze způsobů, jak toho můžete dosáhnout, je metoda Application.FollowHyperlink.

Máme ukázkový formulář s tlačítkem s názvem buttonOne zobrazeným níže.

Kód pro toto tlačítko bude:

12345 Tlačítko Private SubOne_Click ()Application.FollowHyperlink ("https://www.automateexcel.com/excel/")End Sub

Vytvoření hypertextového odkazu z výběru ve Wordu

S hypertextovými odkazy můžete pracovat i ve Wordu VBA.
Řekněme, že máme text Slovo to říká „Kliknutím sem přejdete na web Automate Excel“, který je vybrán, jak je uvedeno níže.

Chcete -li tento text převést na hypertextový odkaz pomocí jazyka VBA, můžete použít následující kód:

123 Soukromý dílčí turnASelectionIntoAHyperlink ()ActiveDocument.Hyperlinks.Add Anchor: = Selection.Range, Adresa: = "https://www.automateexcel.com/excel/", ScreenTip: = "Klikněte sem prosím", Cíl: = Nové oknoEnd Sub

Výsledek je:

Vám pomůže rozvoji místa, sdílet stránku s přáteli

wave wave wave wave wave