【发布时间】:2018-04-08 20:43:04
【问题描述】:
我在 VBA 中使用此公式,但出现类型不匹配错误
LastRow = Application.WorksheetFunction.Lookup(2, 1 / --Len(Range("L23:L9000")) > 0, _
Application.WorksheetFunction.Row(Range("L23:L9000")))
请帮助解决问题,此公式在 Excel 中运行良好
【问题讨论】:
我在 VBA 中使用此公式,但出现类型不匹配错误
LastRow = Application.WorksheetFunction.Lookup(2, 1 / --Len(Range("L23:L9000")) > 0, _
Application.WorksheetFunction.Row(Range("L23:L9000")))
请帮助解决问题,此公式在 Excel 中运行良好
【问题讨论】:
您尝试在 VBA 中重现的有效 Excel 公式是什么?
您似乎正在转换一个数组公式,它可能无法转换为 VBA。为此,您可以使用:
Application.Evaluate("<Your working Excel formula in here>")
我看到两个明显的错误:
1) Application.WorksheetFunction.Row 不是有效的工作表函数。你可以试试Range("L23:L9000").Row 或Range("L23:L9000").Rows,这取决于你打算使用什么。
2) 同样,您不能使用Len(Range("L23:L9000")),因为 Len 需要一个标量值而不是一个范围。
【讨论】: