![]() |
check.offset
What is this function trying to do...I have added two sheets and not this
function does not complete and Run time error "1004". Application-Defined or Object-error Defined occues.....help Function find_range(worksheetcur As Worksheet, criteria As String, rowoffset As Integer) As Range Dim check As Range Dim tmprange As Range Set check = worksheetcur.Range("A1") flag = 1 Do While flag = 1 check1 = InStr(check.Value, criteria) If check1 0 Then Set tmprange = check.Offset(1 + rowoffset, 1) flag = 0 Else Set check = check.Offset(0, 1) flag = 1 End If Loop Set find_range = tmprange End Function |
check.offset
Your code is advancing past column 256 causing an error.
the code below will stop the error. It will not fix the error. You really need to go to one of the old sheets and find the call to the function. Use Edit and search for "find_range" (don't include double quotes). then look at the second and third parameters. the second parameter is the string checked and the third parameter is the row that is being looked at. You need to do something similar on the new worksheets. This function may not be on a worksheet but being called from another macro. Also check inside the VBA editor for a "CALL find_range". Function find_range(worksheetcur As Worksheet, criteria As String, rowoffset _ As Integer) As Range Dim check As Range Dim tmprange As Range Set check = worksheetcur.Range("A1") flag = 1 Do While flag = 1 check1 = InStr(check.Value, criteria) If check1 0 Then Set tmprange = check.Offset(1 + rowoffset, 1) flag = 0 Else If check.Column < Columns.Count Then Set check = check.Offset(0, 1) Else flag = 0 End If End If Loop Set find_range = tmprange End Function "davenfe" wrote: What is this function trying to do...I have added two sheets and not this function does not complete and Run time error "1004". Application-Defined or Object-error Defined occues.....help Function find_range(worksheetcur As Worksheet, criteria As String, rowoffset As Integer) As Range Dim check As Range Dim tmprange As Range Set check = worksheetcur.Range("A1") flag = 1 Do While flag = 1 check1 = InStr(check.Value, criteria) If check1 0 Then Set tmprange = check.Offset(1 + rowoffset, 1) flag = 0 Else Set check = check.Offset(0, 1) flag = 1 End If Loop Set find_range = tmprange End Function |
All times are GMT +1. The time now is 10:55 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com