我需要用于查找功能的VBA代码,它检查某些值是否在两个日期之间。我的问题是如何在VBA中写出这个“2; 1 /”?
=LOOKUP(2;1/((J3>=Sheet2!$B$2:$B$25)*J3<=Sheet2!$C$2:$C$25));Sheet2!$F$2:$F$25)
我能写点什么吗?:
abc=application.Lookup(2;1/((Cells(3,10)>=Worksheets("Sheet2").Range(B2:B25)*Cells(3,10)<=Worksheets("Sheet2").Range(C2:C25));Worksheets("Sheet2").Range(F2:F25)
答案 0 :(得分:0)
我猜测;
是塞尔维亚的默认分隔符,所以应该没问题。
另一方面,您的支架位于错误的位置 - 开口支架在最后;
之前关闭,最后的关闭支架没有随附的开口支架。
要在VBA中书写,您可以使用:
使用表格代号:
r = Application.WorksheetFunction.Lookup _
(2; 1 / (J3 >= Sheet2.Range("$B$2:$B$25")) * J3 <= Sheet2.Range("$C$2:$C$25"); Sheet2.Range("$F$2:$F$25"))
使用工作表标签名称:
r = Application.WorksheetFunction.Lookup _
(2; 1 / (J3 >= Worksheets("Sheet2").Range("$B$2:$B$25")) * J3 <= Worksheets("Sheet2").Range("$C$2:$C$25"); Worksheets("Sheet2").Range("$F$2:$F$25"))
将范围添加到变量并使用它们:
Dim MyRange1 As Range
Dim MyRange2 As Range
Dim MyRange3 As Range
MyRange1 = Worksheets("Sheet2").Range("$B$2:$B$25")
MyRange2 = Worksheets("Sheet2").Range("$C$2:$C$25")
MyRange3 = Worksheets("Sheet2").Range("$F$2:$F$25")
r = Application.WorksheetFunction.Lookup _
(2; 1 / (J3 >= MyRange1) * J3 <= MyRange2; MyRange3)
我没有真正使用过LookUp,因此无法说出公式是否会返回您期望的结果。