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