Я создал функцию для создания гиперссылок в рабочей книге между рабочими листами. По какой-то причине я получаю ошибку 13: Ошибка несоответствия типов при попытке создать гиперссылку.
Вот функция для создания гиперссылок:
Public Function SearchAndLink(txtTicketNum As String, shtFromSheet As Worksheet, rngFromCell As Range, txtFromText As String, shtToSheet As Worksheet, txtToText As String, numFromOff As Integer, numToOff As Integer) As Boolean Dim rngToCell As Range Set rngToCell = shtToSheet.Cells.Find(What:=txtTicketNum) If Not rngToCell Is Nothing Then Sheets(shtFromSheet).Hyperlinks.Add anchor:=rngFromCell.Offset(0, numFromOff), Address:="", SubAddress:= _ "'" & Sheets(shtToSheet).Name & "'!" & rngToCell.Address, TextToDisplay:=txtFromText Sheets(shtToSheet).Hyperlinks.Add anchor:=rngToCell.Offset(0, numToOff), Address:="", SubAddress:= _ "'" & Sheets(shtFromSheet).Name & "'!" & rngFromCell.Address, TextToDisplay:=txtToText rngToCell.EntireRow.Interior.ColorIndex = -4142 rngToCell.EntireRow.Font.Name = "Calibri" rngToCell.EntireRow.Font.Size = 11 SearchAndLink = True Else SearchAndLink = False End If End Function
И вот где я создаю переменные и вызываю функцию:
Public Sub CrossReference() Dim strRORA As String Dim rngslider As Range Dim boolFound As Boolean 'Set variables to check RO's versus open tickets Set rngslider = Sheets("Resource Orders").Range("A4") Do While rngslider "" 'continue while the name column has data ' set variables to check open tickets strRORA = UCase(rngslider.Offset(0, 10).Value) boolFound = SearchAndLink(strRORA, Sheets("Resource Orders"), rngslider, strRORA, Sheets("Open Tickets"), "RO", 10, 78)
Я попытался ввести лист и диапазон вручную, чтобы найти ошибку, но я всегда получаю ошибку несоответствия типов. Я использую переменные в функции неправильно? Любая помощь будет наиболее ценной.