我有两张纸。我想从第一张纸中的日期范围(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
。
答案 0 :(得分:2)
由于dblmax
是 VBA变量,因此请在VBA中对其进行评估,并在传递给Excel的公式中进行连接:
.Range("BL2:BL" & NewLastRow).Formula = "=IF(AK2>" & dblmax & ",""NEW"",""OLD"")"
^^^^^^^^^^^^^^