当在VBa中使用DateAdd时,溢出或被零运行时错误划分
在VBA中使用DateAdd
时出现以下错误。 Runtime error: 11 Division by Zero
或Runtime error: 6 Overflow
Runtime error: 11 Division by Zero
Runtime error: 6 Overflow
(更经常)
Dim todDate As Date Dim currDt As Date todDate = Format(ActiveWorkbook.Sheets("Sheet1").Range("B6").Value, "mm/dd/yyyy") currDt = Format(DateAdd("d", 20, todDate), "mm/dd/yyyy") ----> Runtime Error HERE
todDate
从格式为short date format (mm/dd/yy)
的单元格(“B6”)中检索。 我也干了不使用Format
函数来计算currDt,但也没有成功。 任何想法,为什么这可能是?
谢谢
您需要将date传递给dateadd函数。 格式将返回一个string,你也不必要地重复格式。 试试下面。
Dim todDate As Date Dim currDt As string todDate = ActiveWorkbook.Sheets("Sheet1").Range("B6").Value currDt = Format(DateAdd("d", 20, todDate), "mm/dd/yyyy")