早上好,全部,
我正在研究以下内容,但我无法理解我的生活。我的表包含一堆截止日期。我想要做的是添加一个添加另一个字段的查询,如果日期等于上周的一天,则插入一个yes。老实说,我需要它插入是,只要它不=本周。
我尝试过使用:
Urgent: IIf([Due Date]=[Due Date]
Between
DateAdd("d",1-Weekday(Date()) 7, Date()) And
DateAdd("d",1-Weekday(Date())-1, Date()),"Yes","")
没有运气。我在这里想念的是什么?!
谢谢大家。欢呼声。
答案 0 :(得分:1)
如果'不是本周'意味着上周六及之前,这里是如何返回紧急。不知道如果没有代码你会怎么做。
Helper函数根据当前日期获取本周的第一天。将其粘贴到新的或现有的全局模块中。
Function FirstDateOfTheWeek() As Date
Dim dt As Date
If Weekday(Date) = vbSaturday Then
FirstDateOfTheWeek = DateAdd("y", -6, Date) 'today is Saturday? then return previous Sunday
ElseIf Weekday(Date) = vbSunday Then
FirstDateOfTheWeek = Date 'today is Sunday? then return Sunday because its the first day of the week
Else 'weekday, so just go backwards until we hit previous sunday's date
dt = Date
While Weekday(dt) <> vbSunday
dt = DateAdd("y", -1, dt)
Wend
FirstDateOfTheWeek = dt
End If
End Function
从查询中调用的IsUrgent函数。将其粘贴到新的或现有的全局模块中。
Function IsUrgent(dt As Variant) As String
If IsNull(dt) Then 'if null date is passed then return blank string; Variant chosen instead of date for this case; change it to N/A if you want?
IsUrgent = ""
Exit Function
End If
If dt < FirstDateOfTheWeek Then
IsUrgent = "Yes"
Else
IsUrgent = ""
End If
End Function
调用列调用IsUrgent()函数:
IsUrgent: IsUrgent([Due Date])