在VBA中,我想从范围中提取最大日期(或最大值),但我不想更改范围的格式。现在看起来如下:
日期: 2023-10-02 2023-10-03 2023-10-04 2023-10-05 2023-10-06 2023-10-07
但是正常的 max 函数在 VBA 中不起作用...
此列中也有空单元格,因此最好不要考虑这些单元格。
提前感谢您并致以最诚挚的问候!
您可以利用工作表函数 Max 来获取最大值,返回值将是 double 的形式。
在 A1 可能为空的情况下,使用 Range("A1").End(xlDown) 将定位下一个非空白单元格。
Debug.Print Format(Application.WorksheetFunction.Max(Range("A:A")), Range("A1").End(xlDown).NumberFormatLocal)
如果您清楚地了解预期的输出格式,则可以使代码更简单。
Debug.Print Format(Application.WorksheetFunction.Max(Range("A:A")), "yyyy-mm-dd")