【问题标题】:Default to current date range in combo box默认为组合框中的当前日期范围
【发布时间】:2015-03-22 14:52:35
【问题描述】:

我有一个组合框,其中的值来自另一个表。该列表包含日期跨度,即。 2014 年 12 月 7 日至 2014 年 12 月 14 日,按日期顺序排列。值来自的表还具有开始日期(即 2014 年 12 月 7 日)和结束日期(2014 年 12 月 14 日)的字段。为了方便用户,我想在组合框中将当前日期范围显示为默认值。所以,今天,不是去 12/7/2014 到 12/14/2014,而是去 1/18/2015 到 1/31/2015 - 因为今天的日期是 2015 年 1 月 23 日。我不知道该怎么做。

组合框的行源是:SELECT tblPayDates.DateSpan, tblPayDates.PayBegDate, tblPayDates.PayEndDate FROM tblPayDates

这是一个带有 Access 前端的 SQL 数据库。任何帮助将不胜感激!提前致谢!我什至不确定要谷歌什么。

【问题讨论】:

    标签: sql combobox ms-access-2010 default-value


    【解决方案1】:

    DateSpan 似乎是您的绑定列,因此您可以获取范围并将组合设置为该范围。

    一个函数

    Function ThisFortnight()
    
        StartDate = Date - Weekday(Date, vbUseSystemDayOfWeek)
        EndDate = StartDate + 13
    
        ThisFortnight = StartDate & " to " & EndDate
    End Function
    

    设置组合

    Me.MyCombo = ThisFortnight
    

    【讨论】:

    • 这只是给我我的组合框项目吗?我的做法与您不同,但我的组合框工作正常 - 它按日期顺序提供了我的表(表 tblPayDates)中的所有日期跨度(字段日期跨度)。我需要的是组合框默认为今天的日期范围。现在它转到日期范围内的第一个日期。
    • 我忘了输入 - 感谢您的帮助。
    • 我不建议你改变现有的组合行源,只是你用函数找到当前范围并将组合的值设置为当前范围,以上都是VBA。该函数应粘贴到您的模块中,代码可以在表单的当前事件中运行。
    猜你喜欢
    • 1970-01-01
    • 2015-05-31
    • 2017-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-06
    • 2011-04-15
    • 2013-05-12
    相关资源
    最近更新 更多