如何在 vba 中使用 workday 函数(附示例)


您可以使用 VBA 中的WorkDay方法从日期中添加或减去特定数量的工作日。

以下是在实践中使用此方法的常见方法:

 SubAddWorkDays ()

Dim i As Integer

For i = 2 To 10
    Range("C" & i) = WorksheetFunction.WorkDay(Range("A" & i), Range("B" & i))
Next i

End Sub

此特定宏将范围B2:B10中指定的工作日数添加到范围A2:A10中的每个日期,并在范围C2:C10中显示结果。

以下示例展示了如何在实践中使用此语法。

示例:如何在 VBA 中使用 WorkDay 函数

假设 Excel 中有一个日期列,以及另一列指定要添加到每个日期的工作日数:

我们可以创建以下宏,将 B 列中的工作日数添加到 A 列中的每个相应日期:

 SubAddWorkDays ()

Dim i As Integer

For i = 2 To 10
    Range("C" & i) = WorksheetFunction.WorkDay(Range("A" & i), Range("B" & i))
Next i

End Sub

当我们运行这个宏时,我们会收到以下输出:

默认情况下,C 列将日期显示为序列号。

要将这些值显示为可识别的日期,请突出显示范围C2:C10 ,然后单击顶部功能区的“插入”选项卡,然后单击“数字格式”下拉菜单并单击“短日期”

每个序列号现在将显示为日期:

C 列显示 A 列中的每个日期,并添加 B 列中的特定工作日数。

请注意,如果我们在 B 列中指定负数, WorkDay方法将从 A 列中的日期中减去该工作日数。

注意:您可以在此处找到 VBA WorkDay方法的完整文档。

其他资源

以下教程说明如何在 VBA 中执行其他常见任务:

VBA:如何从日期获取月份名称
VBA:如何按日期排序
VBA:如何在两个日期之间添加if

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注