Denne VBA -vejledning dækker de forskellige måder at arbejde med hyperlinks i VBA.
VBA -hyperlinks
Med VBA kan du tilføje hyperlinks, fjerne hyperlinks, oprette e -mails ved hjælp af hyperlinks og åbne filer ved hjælp af hyperlinks i VBA.
Tilføj et hyperlink med VBA
Hyperlinks.Add -metoden tilføjer et hyperlink til en celle ved hjælp af VBA.
Følgende kode tilføjer et hyperlink til celle A1:
123 | Sub AddHyperlinkToCell ()ActiveSheet.Hyperlinks.Add Range ("A1"), Adresse: = "https://www.automateexcel.com/excel/"Afslut Sub |
Resultatet er:
Tilføjelse af tekst til display med VBA
Du kan tilføje pæn brugervenlig tekst til visning til dit hyperlink med VBA. Hvis du brugte regnearksfunktionen, ville du indsætte et hyperlink og derefter tilføje en tekst, der skal vises i den medfølgende dialogboks.
Koden herunder viser, hvordan du tilføjer tekst til visning til dit hyperlink ved hjælp af VBA:
123 | Sub TextToDisplayForHyperlink ()ActiveSheet.Hyperlinks.Add Range ("A1"), Adresse: = "https://www.automateexcel.com/excel/", TextToDisplay: = "Automatiser Excel"Afslut Sub |
Resultatet er:
Tilføjelse af et skærmtip med VBA
Du kan tilføje et skærmtip til dit hyperlink, som seeren vil se, når de svæver over linket.
Koden herunder viser, hvordan du tilføjer et ScreenTip til dit hyperlink ved hjælp af VBA:
123 | Sub ScreenTipForHyperlink ()ActiveSheet.Hyperlinks.Add Range ("A1"), Adresse: = "https://www.automateexcel.com/excel/", TextToDisplay: = "Automatiser Excel", ScreenTip: = "Dette er linket til Automate Excel"Afslut Sub |
Resultatet er:
Slet et hyperlink med VBA
Hyperlinks.Delete -metoden kan bruges til at slette et hyperlink fra en celle.
Den følgende kode vil slette hyperlinket fra celle A1 og teksten i cellen.
Bemærk, at bare sletning af hyperlinket ikke sletter selve teksten, og derfor skal du også bruge Clear -metoden, hvis du vil have teksten slettet.
1234 | Sub DeleteHyperlinkinCell ()Område ("A1"). Hyperlinks. SletOmråde ("A1"). KlarAfslut Sub |
Slet alle hyperlinks i et regneark
Du kan også slette alle hyperlinks i dit regneark ved hjælp af Hyperlinks.Delete -metoden.
Følgende kode vil slette alle hyperlinks i det første regneark i din projektmappe:
123 | Sub RemoveAllHyperlinksInASheet ()ThisWorkbook.Sheets (1) .Hyperlinks.DeleteAfslut Sub |
Følg et websted hyperlink ved hjælp af VBA
Følgende kode giver dig mulighed for at åbne en webstedsadresse i et nyt vindue i din browser ved hjælp af FollowHyperlink -metoden i din projektmappe:
123 | Sub FølgHyperlinkForWebsite ()ActiveWorkbook.FollowHyperlink Address: = "https://www.automateexcel.com/excel", NewWindow: = TrueAfslut Sub |
Følg et hyperlink til en mappe på dit drev
Følgende kode åbner en mappe kaldet ExcelFiles på skrivebordet ved hjælp af FollowHyperlink -metoden:
123 | Sub FølgHyperlinkForFolderOnDrive ()ActiveWorkbook.FollowHyperlink Address: = "C: \ Desktop \ ExcelFiles"Afslut Sub |
Følg et hyperlink til en fil på dit drev
Følgende kode åbner en Excel -fil kaldet WorkbookOne i mappen ExcelFiles på skrivebordet ved hjælp af FollowHyperlink -metoden:
123 | Sub FollowHyperlinkForFile ()ActiveWorkbook.FollowHyperlink Address: = "C: \ Desktop \ ExcelFiles \ WorkbookOne.xlsx", NewWindow: = TrueAfslut Sub |
Gå til en celle i et andet ark i den samme projektmappe
Du kan tilføje et hyperlink til en celle i et ark, der fører dig til et andet ark, i den samme projektmappe med VBA. Lad os sige, at du er på Sheet1, celle A1 i din projektmappe, og du vil indsætte et hyperlink til Sheet2, celle B2 i den samme projektmappe, du kan bruge egenskaben SubAddress til at gøre dette.
Følgende kode viser, hvordan du gør dette:
123 | Sub GoToAnotherCellInAnotherSheetInTheSameWorkbook ()ActiveSheet.Hyperlinks.Add Range ("A1"), Address: = "", SubAddress: = "'" & Sheet2.Name & "'! B2", TextToDisplay: = "Klik her for at gå til Sheet2, celle B2 i samme projektmappe "Afslut Sub |
Vis alle hyperlinks i et regneark
Du kan få adgang til hyperlinksamlingen og vise alle hyperlinks i dit regneark i Mellemvindue i VBA Editor. Du skal først trykke på CTRL+G på dit tastatur eller gå til Vis> Mellemvindue i VBE Editor, for at se mellemvinduet.
Følgende kode viser, hvordan du får vist hyperlinks i dit regneark i mellemvinduet:
1234567891011 | Sub ShowAllTheHyperlinksInTheWorksheet ()Dim ws Som regnearkSæt ws = ThisWorkbook.Sheets (1)For hver lnk i ws.HyperlinksDebug.Print lnk.AddressNæste lnkAfslut Sub |
Resultaterne vises i mellemvinduet.
Vis alle hyperlinks i en projektmappe
Du kan få adgang til hyperlinksamlingen for at gå igennem og vise alle hyperlinks i din projektmappe i en meddelelsesboks.
Følgende kode viser, hvordan man gør dette, og bruger en indlejret sløjfe for at opnå dette:
1234567891011 | Sub ShowAllTheHyperlinksInTheWorkbook ()Dim ws Som regnearkFor hver gang i ActiveWorkbook.WorksheetsFor hver lnk i ws.HyperlinksMsgBox lnk.AdressNæste lnkNæste wsAfslut Sub |
Brug af FollowHyperlink -metoden til at oprette e -mails
Du kan også oprette e -mails ved hjælp af FollowHyperlink -metoden.
Koden herunder viser dig, hvordan du opretter e -mails ved hjælp af FollowHyperlink -metoden i VBA:
12345678 | Sub SendEmailUsingHyperlink ()Dim msgLink som strengmsgLink = "mailto:" & "[email protected]" & "?" & "subject =" & "Hello" & "&" & "body =" & "How are you?"ActiveWorkbook.FollowHyperlink (msgLink)Afslut Sub |
Resultatet er:
Tilføjelse af et hyperlink til en AutoShape i Excel
Du kan tilføje et hyperlink til en Autoshape i Excel, så når brugeren klikker på formen, bliver de taget til en webstedsadresse.
Følgende kode opretter et afrundet rektangel, tilføjer teksten til rektanglet og tilføjer et hyperlink til rektanglet:
12345678910111213 | Sub TilføjelseAHyperlinkToAShape ()Dim myShape som formAngiv myDocument = Regneark ("Ark1")Indstil myShape = myDocument.Shapes.AddShape (msoShapeRoundedRectangle, 100, 100, 90, 30)Med myShape.TextFrame.Characters.Text = "Automatiser Excel"Afslut medActiveSheet.Hyperlinks.Add Anchor: = myShape, Address: = "https://www.automateexcel.com/excel"Afslut Sub |
Resultatet er:
Indsætning af hyperlinkformlen i en celle ved hjælp af VBA
Lad os sige, at du har en indlægstitel i celle A4 og et indlægslink i celle B4 som vist på billedet herunder.
En hurtig påmindelse om regnearks Hyperlink -formelsyntaks er:
HYPERLINK (link_location, [friendly_name])
link_location - Dette er linket til dokumentet, filen, stedet i projektmappen eller online -webstedet.
venligt navn - (Valgfri) - Teksten eller den numeriske værdi, der vises i cellen.
I celle C4 vil du tilføje hyperlinket med en venlig tekst til visning, nu vil du normalt indtaste formlen = HYPERLINK (B4, A4) i C4 for at få følgende:
Du kan i stedet bruge VBA til at opnå det samme resultat og indsætte denne formel i cellen på Sheet1 med følgende kode:
123 | Sub InsertHyperlinkFormulaInCell ()ActiveWorkbook.Worksheets ("Ark1"). Område ("C4"). Formel = "= hyperlink (B4, A4)"Afslut Sub |
Tilføjelse af et hyperlink til en knap i Access
VBA giver dig også mulighed for at arbejde med hyperlinks i Access. Lad os sige, at vi har en knap på en formular, og når brugeren klikker på den knap, vil vi have dem til at blive taget til et websted. En måde, du kan bruge til at gøre dette, er via Application.FollowHyperlink -metoden.
Vi har vores prøveformular med en knap kaldet buttonOne vist nedenfor.
Koden til denne knap ville være:
12345 | Privat sub -knap One_Click ()Application.FollowHyperlink ("https://www.automateexcel.com/excel/")Afslut Sub |
Oprettelse af et hyperlink fra et udvalg i Word
Du kan også arbejde med hyperlinks i Word VBA.
Lad os sige, at vi har tekst ind Ord der siger "Klik her for at blive bragt til automatisering af Excel -webstedet", der er valgt som vist nedenfor.
For at gøre denne tekst til et hyperlink ved hjælp af VBA kan du bruge følgende kode:
123 | Private Sub TurnASelectionIntoAHyperlink ()ActiveDocument.Hyperlinks.Add Anchor: = Selection.Range, Address: = "https://www.automateexcel.com/excel/", ScreenTip: = "Klik her venligst", Target: = NewWindowAfslut Sub |
Resultatet er: