VBA中的日期比较

时间:2017-07-29 23:24:15

标签: vba excel-vba excel

我有两张纸。我想从第一张纸中的日期范围(AK)中选择最大值,然后与第二张纸中的给定日期进行比较以打印NEw和OLD。但我的公式不起作用,我是VBA的新手。

我的公式

Set Rng = OldSheet.Range("AK2:AK" & OldLastRow)

'Worksheet function Max returns the Max value in a range
dblmax = Application.WorksheetFunction.Max(Rng)

With NewSheet

'Determine last row in col BG
NewLastRow = .Cells(.Rows.count, "A").End(xlUp).Row

.Range("BL2:BL" & NewLastRow).Formula = "=IF(AK2>dblmax,""NEW"",""OLD"")"

使用代码后,dblmax将打印为dblmax

1 个答案:

答案 0 :(得分:2)

由于dblmax VBA变量,因此请在VBA中对其进行评估,并在传递给Excel的公式中进行连接:

.Range("BL2:BL" & NewLastRow).Formula = "=IF(AK2>" & dblmax & ",""NEW"",""OLD"")"
                                                 ^^^^^^^^^^^^^^