【发布时间】:2014-09-11 19:00:10
【问题描述】:
所以我有一个循环来检查列中的每个单元格并找到一个特定的日期(当前是前一周的星期一)。我的代码现在确实正确选择了它们,但我希望它保留之前的选择,所以最后选择了该规范的所有单元格
Public Function LastMonday(pdat As Date) As Date
LastMonday = DateAdd("ww", -1, pdat - (Weekday(pdat, vbMonday) - 1))
End Function
Sub Macro2()
Macro2 Macro
Dim rng As Range
Dim curCellValue As String
Dim mondayStr As String
mondayStr = Format(LastMonday(Date), "dd/mm/yyyy")
Set rng = Range(ActiveSheet.Range("E2"), ActiveSheet.Range("E2").End(xlDown))
For Each Cell In rng
curCellValue = Cell.Value
If curCellValue = mondayStr Then Cell.Select
Next Cell
End Sub
作为奖励,要将函数更改为上周的不同日期,我是否只需将 vbMonday 更改为 vbTuesday 等?我承认我对 VBA 不太了解,而且其中大部分内容都是从这里被弗兰肯斯坦弄出来的。
【问题讨论】: