VBA Hyperlink

Hyperlink adalah URL yang dilampirkan ke nilai yang terlihat ketika kita mengarahkan mouse ke atasnya dan ketika kita mengkliknya, URL dibuka, di VBA kita memiliki properti bawaan untuk membuat hyperlink di VBA dan untuk menggunakan properti ini kita menggunakan metode Add bersama dengan pernyataan hyperlink untuk memasukkan hyperlink ke dalam sel.

Hyperlink di Excel VBA

Meskipun kami memiliki tombol pintas Page Up & Page Down di excel untuk berpindah dari satu lembar ke lembar lainnya. Tapi itu menjadi rumit ketika kita harus berpindah antara 10 lembar kerja ke lebih banyak. Di sinilah keindahan "Hyperlinks in Excel" terlihat. Hyperlink adalah URL yang ditentukan sebelumnya yang membawa Anda ke sel atau lembar kerja masing-masing seperti yang ditetapkan.

Kita semua tahu cara membuat hyperlink di lembar kerja untuk dengan cepat berpindah dari satu lembar ke lembar lain dan Anda juga bisa pergi ke lembar lain. Namun dalam artikel hari ini, kami akan menunjukkan kepada Anda cara membuat hyperlink dengan menggunakan pengkodean VBA.

Formula Hyperlink VBA

Mari kita lihat rumus hyperlink di Excel VBA.

  • Anchor: Di sel mana Anda ingin membuat hyperlink.
  • Alamat: Apa URL ke hyperlink untuk dinavigasi?
  • [Sub Address]: Di mana lokasi halaman?
  • [Tip Layar]: Berapa nilai yang akan ditampilkan saat Anda menempatkan penunjuk mouse pada nama atau sel hyperlink?
  • [Teks ke Tampilan]: Apa tes yang akan ditampilkan di sel? Misalnya Nama Lembar Kerja.

Bagaimana cara membuat hyperlink di Excel VBA?

Anda dapat mengunduh Template Hyperlink VBA ini di sini - Template Hyperlink VBA

Asumsikan Anda ingin membuat hyperlink VBA ke sheet bernama "Main Sheet" dari sheet "Contoh 1" lainnya.

Di lembar kerja "Contoh 1" dan di sel A1, saya akan membuat hyperlink menggunakan Kode di VBA.

Langkah 1: Pertama pilih sel A1 lembar kerja Contoh 1.

Kode:

 Sub Hyperlink_Example1 () Worksheets ("Contoh 1"). Pilih Range ("A1"). Pilih End Sub 

Langkah 2: Sekarang dengan menggunakan objek sel aktif, buka hyperlink. tambahkan metode.

Kode:

 Sub Hyperlink_Example1 () Worksheets ("Contoh 1"). Pilih Range ("A1"). Pilih ActiveCell.Hyperlinks.Add (End Sub 

Langkah 3:  Argumen pertama adalah "Anchor" yaitu di sel mana kita akan menautkan untuk membuat hyperlink VBA. Dalam hal ini sel A1 dan karena kami telah memilih sel A1 untuk menyebutnya sebagai "Seleksi".

Kode:

 Sub Hyperlink_Example1 () Lembar Kerja ("Contoh 1"). Pilih Rentang ("A1"). Pilih ActiveCell.Hyperlinks.Add (Pilihan, Akhiri Sub 

Langkah 4: Kami tidak membuat alamat apa pun di sini, jadi abaikan Alamat sekarang.

Kode:

 Sub Hyperlink_Example1 () Worksheets ("Contoh 1"). Pilih Range ("A1"). Pilih ActiveCell.Hyperlinks.Add Anchor: = Selection, Address: = "", End Sub 

Langkah 5: Berikutnya adalah Alamat Sub. Di sini kita perlu menyebutkan sheet mana yang kita rujuk dan sel pertama dari sheet itu.

Kode:

 Sub Hyperlink_Example1 () Worksheets ("Example 1"). Pilih Range ("A1"). Pilih ActiveCell.Hyperlinks.Add Anchor: = Selection, Address: = "", SubAddress: = "'Main Sheet'! A1", End Sub 

Saya telah menyebutkan nama sheet sebagai "Lembar Utama" dan di alamat sel lembar itu adalah "A1".

Langkah 6: Abaikan Tip Layar juga. Untuk Teks yang akan ditampilkan sebutkan nama sheet.

Kode:

 Sub Hyperlink_Example1 () Worksheets ("Example 1"). Pilih Range ("A1"). Pilih ActiveCell.Hyperlinks.Add Anchor: = Selection, Address: = "", SubAddress: = "'Main Sheet'! A1", TextToDisplay : = "Lembar Utama" End Sub 

Ok, selesai jalankan kode ini menggunakan tombol F5 atau secara manual kemudian akan membuat hyperlink di sel A1 pada sheet “Contoh 1”.

Ketika Anda mengklik Hyperlink "Lembar Utama" itu mengarahkan ke lembar utama.

Hyperlink dari Beberapa Lembar dengan Loop

Kami telah melihat membuat hyperlink VBA untuk satu lembar. Saat kami memiliki banyak sheet, sulit untuk membuat hyperlink VBA untuk setiap sheet dengan baris kode yang sama untuk setiap sheet.

Asumsikan Anda memiliki 11 lembar kerja seperti yang ditunjukkan pada gambar di bawah ini.

Anda ingin membuat hyperlink untuk setiap lembar di lembar Indeks menggunakan Kode VBA.

Langkah 1: Tentukan variabel sebagai lembar kerja.

Kode:

 Sub Create_Hyperlink () Dim Ws As Worksheet End Sub 

Langkah 2: Hal pertama adalah memilih Indeks lembar kerja dan memilih sel A1.

Kode:

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

Langkah 3: Sekarang buka Untuk Setiap Loop di VBA.

Kode:

 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 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 

Step 9: To store the hyperlink of each sheet in a different cell every time hyperlink created for one sheet we need to move down one cell from 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, Address:="", SubAddress:="" & Ws.Name & "!A1" & "", ScreenTip:="", TextToDisplay:=Ws.Name ActiveCell.Offset(1, 0).Select Next Ws End Sub 

This will create a hyperlink of all the sheets in the Index sheet. This code is dynamic, whenever there is any addition or deletion of sheets we just need to run this code to have an updated hyperlink.