我刚开始学习VBA三周前,所以随时批评我的代码。VBA - IIF声明与CDate(变体)
我想用IIF
语句做什么。如果语句中:
Dim rng_ModPlanStart as range
Dim QueryDate as Variant
Set rng_ModPlanStart = ThisWorkbook.ActiveSheet.Range("AH2:AH" & LastCell)
rng_ModPlanStart(1).Offset(-1, 0).Value = "Module Planned Start"
For Each cl In rng_ModPlanStart
QueryDate = Application.VLookup(ActiveSheet.Range("E" & cl.Row), Sheets("Chamber Schedule").Range("B:U"), 20, False)
If Not ((IsError(QueryDate))) Then
cl.Value = DateDiff("d", CDate(QueryDate), Date)
End If
Next cl
但我在尝试使用IIF像
IIF(IsError(QueryDate), "", DateDiff("d", CDate(QueryDate), Date))
因为VBA认为QueryDate时出错不是日期......它应该由CDate功能正确吗?我错过了什么?
变体可以是一切。你有没有检查过它的内容? – RuDevel