Return 范围内的最大值,其中评估的值满足 VBA 中的条件

Return the max value within a range where the values evaluated fulfills a criteria in VBA

我想在我的 VBA 代码中使用 excel 中的这个函数

MAX((F2:F20=CellRef)*G2:G20)

函数returns范围内值的最大值在一定条件下。(CellRef指的是范围F2:F20中的特定单元格)

该函数在 excel 中运行得非常好,但我似乎无法在我的 VBA 代码中正确实现它。

这是我在VBA中写的:

WorksheetFunction.Max((Worksheets("Ark1").Range("F2:F35000") = CellRef2) * Worksheets("Ark1").Range("G2:G35000"))

目的是然后查看此输出(这是一个日期)是否等于另一个日期,如果是,则 Something。 (CellRef2 指的是 F2:F35000 范围内的特定单元格)

提前致谢

使用excel中的函数:

MAX 日期单元格 1 表示 serial_Number“uefh”

的最大日期

您可以使用 MAXIFS 函数 https://support.microsoft.com/en-gb/office/maxifs-function-dfd611e6-da2c-488a-919b-9b6376b28883

因此,如果您的上述数据在 A1 中以 serial_number 开头,则 C2 中的公式将为

=MAXIFS($B:$B, $A:$A, A2)