创建宏函数以在多个单元格上输入函数。 函数中的范围取决于另一个单元格的值。
函数为= INDEX($ B $ 3:$ B $ ,RANK(C5,$ C $ 3:$ C $ ,1))
三个*代表我必须在其中输入单元格G2的值,当前,G2值为12,因此该函数应读取 = INDEX($ B $ 3:$ B $ 12,RANK(C5,$ C $ 3:$ C $ 12,1)) G2中的函数是= LOOKUP(2,1 /(B:B <>“”),ROW(B:B))
我尝试使用Activecell.Value和Activecell.formular1c1 但到目前为止没有运气。
我尝试了以下代码,但它实际上不是一个函数。
Range("D3").Select
ActiveCell.Value = "=INDEX($B$3:B$"
ActiveCell.Value = ActiveCell.Value & R2C7
ActiveCell.Value = ActiveCell.Value & "C5,RANK(C5,$C$3:$C$"
ActiveCell.Value = ActiveCell.Value & R2C7
ActiveCell.Value = ActiveCell.Value & ",1))"
答案 0 :(得分:0)
只需连接其中的值,然后使用Range.Formula
类似这样的东西:
Sub Test()
Dim x
x = Range("G2").Value
Range("D3").Formula = "=INDEX($B$3:$B$" & x & ",RANK(C5,$C$3:$C$" & x & ",1))"
End Sub
如果您只是在寻找最后一行,那么也许:
Sub Test2()
Dim lastRow As Long
With ActiveSheet
lastRow = .Cells(.Rows.Count, "B").End(xlUp).Row
End With
Range("D3").Formula = "=INDEX($B$3:$B$" & lastRow & ",RANK(C5,$C$3:$C$" & lastRow & ",1))"
End Sub