Hiperveze su URL koji je pridružen vrijednosti koja se vidi kada zadržite pokazivač miša iznad nje i kada kliknemo na nju, URL se otvara, u VBA imamo ugrađeno svojstvo za stvaranje hiperveza u VBA i za korištenje ovog svojstva koristimo metodu Add zajedno s izraz hiperveza za umetanje hiperveze u ćeliju.
Hiperveze u Excelu VBA
Iako u Excelu imamo tipku prečica za pomicanje stranice i stranice prema dolje, za prelazak s jednog lista na drugi, ali postaje složen kada moramo pomaknuti između 10 i više radnih listova. Tu dolazi do izražaja ljepota "Hiperveza u Excelu". Hiperveza je unaprijed određeni URL koji vas vodi do odgovarajuće ćelije ili radnog lista kako je dodijeljeno.
Svi znamo kako na radnom listu stvoriti hiperveze za brzi prelazak s jednog lista na drugi, a možete ići i na bilo koji drugi list. Ali u današnjem članku pokazat ćemo vam kako stvoriti hiperveze pomoću VBA kodiranja.

Formula hiperveza VBA
Pogledajmo formulu hiperveza u programu Excel VBA.

- Usidrenje: U kojoj ćeliji želite stvoriti hipervezu.
- Adresa: Koji je URL hiperveze za navigaciju?
- (Sub adresa): Na kojem se mjestu nalazi stranica?
- (Savjet za zaslon): Koja će se vrijednost prikazati kada postavite pokazivač miša na ime ili ćeliju hiperveze?
- (Tekst za prikaz): Koji će se test prikazati u ćeliji? Na primjer, Naziv radnog lista.
Kako stvoriti hiperveze u programu Excel VBA?
Pretpostavimo da želite stvoriti VBA hipervezu na list s nazivom "Glavni list" iz drugog lista "Primjer 1".

U radnom listu "Primjer 1" i u ćeliji A1 stvorit ću hipervezu koristeći Code u VBA.
Korak 1: Prvo odaberite ćeliju A1 radnog lista Primjer 1.
Kodirati:
Sub Hyperlink_Example1 () Radni listovi ("Primjer 1"). Odaberite raspon ("A1"). Odaberite End Sub

Korak 2: Sada pomoću hiperveza otvorenih objekata aktivne ćelije. Dodaj metodu.
Kodirati:
Sub Hyperlink_Example1 () Radni listovi ("Primjer 1"). Odaberite raspon ("A1"). Odaberite ActiveCell.Hyperlinks.Add (End Sub

Korak 3: Prvi argument je „Usidri se”, tj. U koju ćemo se ćeliju povezati kako bismo stvorili hipervezu VBA. U ovom slučaju, ćelija A1, a budući da smo već odabrali ćeliju A1, spomenut ćemo je kao "Odabir".
Kodirati:
Sub Hyperlink_Example1 () Radni listovi ("Primjer 1"). Odaberite raspon ("A1"). Odaberite ActiveCell.Hyperlinks.Add (Selection, End Sub)

Korak 4: Ovdje ne stvaramo nijednu adresu, pa zanemarite adresu od sada.
Kodirati:
Sub Hyperlink_Example1 () Radni listovi ("Primjer 1"). Odaberite raspon ("A1"). Odaberite ActiveCell.Hyperlinks.Dodaj sidro: = Odabir, Adresa: = "", Kraj Sub

Korak 5: Sljedeća je pod adresa. Ovdje moramo spomenuti na koji se list pozivamo i prvu ćeliju tog lista.
Kodirati:
Sub Hyperlink_Example1 () Radni listovi ("Primjer 1"). Odaberite raspon ("A1"). Odaberite ActiveCell.Hyperlinks.Add Anchor: = Selection, Address: = "", SubAddress: = "'Main Sheet'! A1", End Pod

Naziv lista spomenuo sam kao "Glavni list", a u toj adresi ćelije je "A1".
Korak 6: Zanemarite i savjet zaslona. Da bi se tekst prikazao, spomenite naziv lista.
Kodirati:
Sub Hyperlink_Example1 () Radni listovi ("Primjer 1"). Odaberite raspon ("A1"). Odaberite ActiveCell.Hyperlinks.Dodaj sidro: = Odabir, Adresa: = "", SubAddress: = "'Glavni list'! A1", TextToDisplay : = "Glavni list" Kraj pod

U redu, pokrenite ovaj kôd pomoću tipke F5 ili ručno. Zatim će stvoriti hipervezu u ćeliji A1 na listu "Primjer 1".

Kada kliknete na Hyperlink "Main Sheet", ona će se preusmjeriti na glavni list.

Hiperveze više listova s petljama
Vidjeli smo kako stvaramo hipervezu VBA za jedan list. Kad imamo mnogo listova, nije lako stvoriti VBA hipervezu za svaki list s istim retkom koda za svaki list.
Pretpostavimo da imate 11 radnih listova, kao što je prikazano na donjoj slici.

Želite stvoriti hipervezu za svaki list u indeksnom listu pomoću VBA koda.
Korak 1: Definirajte varijablu kao radni list.
Kodirati:
Sub Create_Hyperlink () Zatamni kao radni list Kraj Sub

Korak 2: Prvo je odabrati indeks radnog lista i odabrati ćeliju A1.
Kodirati:
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

Korak 9: Da bismo hipervezu svakog lista spremili u drugu ćeliju, svaki put kada se stvori hiperveza za jedan list, moramo se pomaknuti za jednu ćeliju iz aktivne ćelije.
Kodirati:
Sub Create_Hyperlink () Dim Ws As Worksheet Worksheets ("Index"). Odaberite raspon ("A1"). Odaberite za svaki Ws u ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add Anchor: = ActiveCell, Address: = "", SubAddress: = "" & Ws.Name & "! A1" & "", ScreenTip: = "", TextToDisplay: = Ws.Name ActiveCell.Offset (1, 0). Odaberite Next Ws End Sub

To će stvoriti hipervezu svih listova na indeksnom listu. Ovaj je kod dinamičan kad god dođe do dodavanja ili brisanja listova. Moramo pokrenuti ovaj kôd da bismo imali ažuriranu hipervezu.
