在EXCEL编程中Range作参数提示编译异常,对象使用无效
在EXCEL编程中Range作参数提示编译错误,对象使用无效
在VBA中要从一个工作表中检索另一个工作表中的数据,出现如题的错误提示:编译错误,对象使用无效。
请帮我看看,谢谢!
------解决思路----------------------
If Not s = "" And Not r = Nothing Then
这样写:
If Not s = "" And Not r Is Nothing Then
------解决思路----------------------
RngFind部分代码呢?
------解决思路----------------------
既然能执行到“findrange = RngFind(s, r)”这一句,你说“r没有传递过来”,这可能吗!!!
如果“r没有传递过来”,那这里的if语句中 Not r Is Nothing 就是为False ,只能执行 GetRowForCellValue = 0 这句,
即使 RngFind()函数有问题,也不会有影响、不会造成“错误”。
Dim dataRange As range
Set dataRange = Sheets(os).range("A1:" & s_col_end & i_row_end)
MsgBox dataRange.Rows.Count
Dim data_f_row, data_e_row As Integer
data_f_row = GetRowForCellValue("序号", dataRange)
Function GetRowForCellValue(ByVal s As String, ByVal r As range) As Integer '在这行显示错误:编译错误,对象使用无效
Dim findrange As range
If Not s = "" And Not r = Nothing Then
findrange = RngFind(s, r)
GetRowForCellValue = findrange.Row
Else
GetRowForCellValue = 0
End If
End Function
在VBA中要从一个工作表中检索另一个工作表中的数据,出现如题的错误提示:编译错误,对象使用无效。
请帮我看看,谢谢!
------解决思路----------------------
If Not s = "" And Not r = Nothing Then
这样写:
If Not s = "" And Not r Is Nothing Then
------解决思路----------------------
RngFind部分代码呢?
------解决思路----------------------
既然能执行到“findrange = RngFind(s, r)”这一句,你说“r没有传递过来”,这可能吗!!!
如果“r没有传递过来”,那这里的if语句中 Not r Is Nothing 就是为False ,只能执行 GetRowForCellValue = 0 这句,
即使 RngFind()函数有问题,也不会有影响、不会造成“错误”。