Saya telah membuat fungsi untuk membuat hyperlink referensi silang di buku kerja di antara lembar kerja. Untuk beberapa alasan saya mendapatkan Galat 13: Ketik galat ketidakcocokan saat mencoba membuat hyperlink.
Berikut adalah fungsi untuk membuat hyperlink:
Pencarian Fungsi PublikAndLink (txtTicketNum As String, shtFromedheet As Worksheet, rngFromCell As Range, txtFromText As String, shtToSheet As Worksheet, txtToText As String, numFrom As Integer, numToOff As Integer) Sebagai Boolean Dim rngToCell As Range Set rngToCell = shtToSheet.Cells.Find (Apa: = txtTicketNum) If Not rngToCell Is nothing Then Lembar (shtFromSheet) .Hyperlinks.Add jangkar: = rngFromCell.Offset (0, numFromOff), Alamat: = "", SubAddress: = _ "'" & Lembar (shtToSheet) .Nama & "'!" & rngToCell.Address, TextToDisplay: = txtFromText Lembar (shtToSheet) .Hyperlinks.Add jangkar: = rngToCell.Offset (0, numToOff), Alamat: = "", SubAddress: = _ "'" & Lembar (shtFromSheet) .Nama & "'!" & rngFromCell.Address, TextToDisplay: = txtToText rngToCell.EntireRow.Interior.ColorIndex = -4142 rngToCell.EntireRow.Font.Name = "Calibri" rngToCell.EntireRow.Font.Size = 11 SearchAndLink = Benar Lain SearchAndLink = Salah Berakhir jika Fungsi Akhir
Dan di sinilah saya membuat variabel dan memanggil fungsi:
Sub Sub Referensi Umum () Dim strRORA As String Dim rngslider As Range Redup boolFound Sebagai Boolean 'Tetapkan variabel untuk memeriksa RO versus tiket terbuka Set rngslider = Lembar ("Pesanan Sumber Daya"). Rentang ("A4") Do While rngslider "" 'melanjutkan sementara kolom nama memiliki data 'atur variabel untuk memeriksa tiket terbuka strRORA = UCase (rngslider.Offset (0, 10) .Nilai) boolFound = SearchAndLink (strRORA, Sheets ("Pemesanan Sumber Daya"), rngslider, strRORA, Sheets ("Tiket Terbuka"), "RO", 10, 78)
Saya telah mencoba memasukkan sheet dan range secara manual untuk menemukan kesalahan, tetapi saya selalu mendapatkan error tipe mismatch. Apakah saya menggunakan variabel dalam fungsi yang salah? Bantuan apa pun akan sangat dihargai.
microsoft-excel
worksheet-function
vba
SolarGlare
sumber
sumber
Jawaban:
Saya menemukan apa masalahnya. Saya meneruskan objek lembar kerja ke fungsi, tetapi metode untuk hyperlink membutuhkan indeks untuk lembar kerja. Saya mengubah fungsi untuk lulus indeks lembar kerja yang sedang saya kerjakan, dan itu menciptakan hyperlink.
Inilah pemanggilan fungsi baru:
Inilah fungsi baru:
Dan ini adalah kode hyperlink yang benar:
Terima kasih!
sumber