I have created a function to create cross-reference hyperlinks in a workbook between worksheets. For some reason I am getting Error 13: Type mismatch error when it tries to create the hyperlink.
Here is the function for creating the hyperlinks:
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
And here is where I create the variables and call the 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)
I have tried entering the sheet and range manually to find the error, but I always get a type mismatch error. Am I using the variables in the function incorrectly? Any help would be most appreciated.