Excel如果白天是周末/假日,那么空的范围

时间:2017-03-06 07:53:36

标签: vba excel-vba excel-formula excel

我正在尝试创建一个宏,根据我所拥有的日期列表,如果它是星期日或假日,则会清空日期以下的单元格区域。知道如何最好地做到这一点吗?

E.G。 K33:Z33是日期。如果K33是星期日,K34:K100 = 0而不是另一个宏输入的值。

1 个答案:

答案 0 :(得分:1)

你可以Weekday()运作并写下这样一个“帮手”Sub:

Sub FillRange(val As Variant)
    Dim cell As Range
    Dim valToFillWith As Variant

    For Each cell In Range("K33:Z33")
        If Weekday(cell.Value, vbSunday) = 1 Then
            valToFillWith = 0
        Else
            valToFillWith = val
        End If
        cell.Offset(1).Resize(67).Value = valToFillWith
    Next
End Sub

将在您的“主要”子资源中被利用,如下所示:

Sub Main()

    '...
    ' your "macro" code before filling the range
    '...

    FillRange "myMacroValue"

    ' your "macro" code fater filling the range
    '...

End Sub