我正在尝试在VBA中运行一些代码,检查两列完整的开始日期和结束日期,并填写第3列,并在日期之间使用相应的工作日。
For i = 2 To N
Cells(i, F) = Application.networkdays(C, D)
Next i
以上就是我已经尝试过的。我不能在这种情况下显示N是什么,但它基本上是一个找到导入数据结束的函数(一切正常)。我得到应用程序定义错误。如果我删除应用程序。它说网络日不是一个定义的子或函数。
For i = 2 To 50
Cells(i, "F") = Application.networkdays("C", "D")
Next i
如果我运行上面的内容,则使用#VALUE填充第3列(50为N的示例)
For i = 2 To 50
Cells(i, "F") = Application.networkdays(C, D)
Next i
如果我运行以上操作,我会将列填满为0.
我怎样才能让它发挥作用?它似乎很简单,但VBA似乎被编程为使一切都变得不可能! Excel 2013,2010和2016上的相同问题
答案 0 :(得分:2)
您需要在公式中逐行进行。
Cells(i, "F") = Application.networkdays(Cells(i, "C"), Cells(i, "D"))