VBA-hyperlinks - Hvordan oprettes hyperlink i Excel ved hjælp af VBA-kode?

Indholdsfortegnelse

Hyperlinks er URL knyttet til en værdi, der ses, når vi holder musen over den, og når vi klikker på den, åbnes URL'en, i VBA har vi en indbygget egenskab til at oprette hyperlinks i VBA og for at bruge denne egenskab bruger vi Tilføj-metoden sammen med hyperlink-sætningen for at indsætte et hyperlink i en celle.

Hyperlinks i Excel VBA

Selvom vi har Page Up & Page Down genvejstast i excel for at flytte mellem fra et ark til et andet, men det bliver komplekst, når vi skal flytte mellem 10 og flere regneark. Det er her skønheden ved “Hyperlinks i Excel” kommer ind i billedet. Hyperlinket er en forudbestemt URL, der fører dig til den respektive celle eller regneark som tildelt.

Vi ved alle, hvordan man opretter hyperlinks i regnearket for hurtigt at flytte fra et ark til et andet ark, og du kan også gå til ethvert andet ark. Men i dagens artikel vil vi vise dig, hvordan du opretter hyperlinks ved hjælp af VBA-kodning.

Formlen til VBA-hyperlinks

Lad os se på formlen for hyperlinks i Excel VBA.

  • Anker: I hvilken celle du vil oprette et hyperlink.
  • Adresse: Hvad er URL'en til hyperlinket, du skal navigere i?
  • (Underadresse): Hvad er sidens placering?
  • (Skærmtip): Hvad er den værdi, der skal vises, når du placerer en musemarkør på hyperlinknavnet eller -cellen?
  • (Tekst, der skal vises ): Hvad er testen, der skal vises i cellen? For eksempel Navn på regneark.

Sådan oprettes hyperlinks i Excel VBA?

Antag, at du vil oprette et VBA-hyperlink til arket med navnet "Hovedark" fra det andet ark "Eksempel 1".

I regnearket "Eksempel 1" og i cellen A1 opretter jeg hyperlinket ved hjælp af kode i VBA.

Trin 1: Vælg først cellen A1 i regnearkeksempel 1.

Kode:

Underhyperlink_eksempel1 () Arbejdsark ("Eksempel 1"). Vælg rækkevidde ("A1"). Vælg Afslut under

Trin 2: Nu ved hjælp af Active Cell-objekt åbne hyperlinks. Tilføj metode.

Kode:

Underhyperlink_eksempel1 () regneark ("eksempel 1"). Vælg rækkevidde ("A1"). Vælg ActiveCell.Hyperlinks.Tilføj (afslut sub

Trin 3: Det første argument er "Anker", dvs. i hvilken celle vi vil linke for at oprette VBA-hyperlinket. I dette tilfælde celle A1 og da vi allerede har valgt celle A1 for at nævne den som "markering."

Kode:

Underhyperlink_eksempel1 () regneark ("eksempel 1"). Vælg rækkevidde ("A1"). Vælg ActiveCell. Hyperlinks. Tilføj (markering, afslut sub

Trin 4: Vi opretter ikke nogen adresse her, så ignorér adressen fra nu af.

Kode:

Underhyperlink_eksempel1 () regneark ("eksempel 1"). Vælg rækkevidde ("A1"). Vælg ActiveCell.Hyperlinks.Tilføj anker: = markering, adresse: = "", afslut sub

Trin 5: Næste er underadresse. Her skal vi nævne hvilket ark vi henviser til og den første celle i det ark.

Kode:

Underhyperlink_eksempel1 () Arbejdsark ("Eksempel 1"). Vælg område ("A1"). Vælg ActiveCell.Hyperlinks.Tilføj anker: = Valg, adresse: = "", Underadresse: = "'Hovedark'! A1", Afslut Sub

Jeg har nævnt arknavnet som "Hovedark" og i det arkcelle er adressen "A1".

Trin 6: Ignorer også skærmtip. For at tekst skal vises, skal du nævne arknavnet.

Kode:

Underhyperlink_eksempel1 () Arbejdsark ("Eksempel 1"). Vælg rækkevidde ("A1"). Vælg ActiveCell.Hyperlinks.Tilføj anker: = Valg, adresse: = "", Underadresse: = "'Hovedark'! A1", TextToDisplay : = "Hovedark" Afslut sub

Ok, kør denne kode ved hjælp af F5-tasten eller manuelt. Derefter opretter det et hyperlink i cellen A1 i arket "Eksempel 1".

Når du klikker på Hyperlink "Hovedark", omdirigeres det til hovedarket.

Hyperlinks til flere ark med løkker

Vi har set oprettelse af et VBA-hyperlink til et ark. Når vi har mange ark, er det ikke let at oprette et VBA-hyperlink til hvert ark med den samme kodelinje for hvert ark.

Antag at du har 11 regneark som vist i nedenstående billede.

Du ønsker at oprette et hyperlink for hvert ark i indeks ark ved hjælp af VBA-kode.

Trin 1: Definer variablen som et regneark.

Kode:

Under Create_Hyperlink () Dim Ws Som regneark End Sub

Trin 2: Den første ting er at vælge regneark Indeks og vælge cellen A1.

Kode:

Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select End Sub

Step 3: Now open For Each Loop in VBA.

Code:

Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets Next Ws End Sub

Step 4: Since we have already selected the cell A1 it is now an active cell. So start the hyperlink with the active cell.

Code:

Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add( Next Ws End Sub

Step 5: Anchor is a hyperlink cell. So it is the active cell.

Code:

Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add Anchor:=ActiveCell, Next Ws End Sub

Step 6: Address is nothing mention it as “.

Code:

Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add Anchor:=ActiveCell,Address:="", Next Ws End Sub

Step 7: Subaddress is when we loop through the sheet, it should be the sheet name. To refer to the sheet name, we need a single quote, “” with sheet name and “! Cell Address,” and close the sheet name with a single quote “.”

Code:

Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add Anchor:=ActiveCell,Address:="",SubAddress:=""& Ws.Name&"!A1"&"", Next Ws End Sub

Step 8: Ignore Screen tip, and for Text to display, you can enter the worksheet name.

Code:

Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add Anchor:=ActiveCell, Address:="", SubAddress:="" & Ws.Name & "!A1" & "", ScreenTip:="", TextToDisplay:=Ws.Name Next Ws End Sub

Trin 9: For at gemme hyperlinket for hvert ark i en anden celle, hver gang der oprettes et hyperlink til et ark, skal vi flytte en celle ned fra den aktive celle.

Kode:

Under Create_Hyperlink () Dim Ws som regneark regneark ("Indeks"). Vælg rækkevidde ("A1"). Vælg for hvert Ws i ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add Anchor: = ActiveCell, Address: = "", SubAddress: = "" & Ws.Name & "! A1" & "", ScreenTip: = "", TextToDisplay: = Ws.Name ActiveCell.Offset (1, 0). Vælg Next Ws End Sub

Dette opretter et hyperlink til alle arkene i indeksarket. Denne kode er dynamisk, når der tilføjes eller slettes ark. Vi skal køre denne kode for at have et opdateret hyperlink.

Interessante artikler...