Office中国论坛/Access中国论坛

标题: 如何在窗体按日期范围查询 [打印本页]

作者: laowang2    时间: 2002-5-17 00:14
标题: 如何在窗体按日期范围查询
在窗体提供“开始日期--结束日期”,如果不提供则表示默认全部,在查询中的条件如何写???
我的日期格式是1999-02-12。
我用Between #[Forms]![定义查询]![开始日期]# And #[Forms]![定义查询]![结束日期]#条件,不行,请各位指教,谢谢!


[此贴子已经被作者于2002-5-16 16:13:32编辑过]


作者: 大熊    时间: 2002-5-17 00:21
需要#号吗?
作者: lclc    时间: 2002-5-17 00:54
需要#号吗?
不需要#号吗?
需要#号吗?
不需要#号吗?
别介意我只是和你争论一下而以。
需要#号吗?
、、、、、、
作者: MsAccess    时间: 2002-5-17 00:58
看看 Northwind 数据库中的查询 - 各年销售额
作者: laowang2    时间: 2002-5-17 04:20
标题: 还是不行
谢谢指点,可我按你们说的做,虽然可以按日期查出数据,但我不输入日期时,可就什么也查不出了。我要求的是不输入时为默认全部。还请再说明一下???
作者: 竹笛    时间: 2002-5-17 05:11
当然不行啦,除非您不采用这种方式。这种查询条件,计算机要您输入,您却不想输,叫机器怎么办?
作者: cnwang    时间: 2002-5-17 07:13
我的懒办法是设结束日期默认为当前,开始日期为结束日期减N天。
作者: laowang2    时间: 2002-5-17 16:56
标题: 一样
你的方法和我的一样,我也是这样做的。看来我们都是懒汉,呵呵.....
作者: HG    时间: 2002-5-31 23:05
Private Sub adddate_Click()
On Error GoTo err_this
Dim cat As New ADOX.Catalog
Dim tbl As ADOX.Table

Dim cmd As New ADODB.Command
Dim prm As New ADODB.Parameter
Dim strsql As String

run_cmd:
strsql = "SELECT 匯輝送貨資料.日期, 匯輝送貨資料.送貨單號碼, 匯輝送貨資料.客名, 匯輝送貨資料.客採購NO, 匯輝送貨資料.JobNo, 匯輝送貨資料.缸號, 匯輝送貨資料.匹數, 匯輝送貨資料.布類, 匯輝送貨資料.布種, 匯輝送貨資料.浮重, 匯輝送貨資料.實數重, 匯輝送貨資料.重量單位, 匯輝送貨資料.加工項目, 匯輝送貨資料.染廠價, 匯輝送貨資料.工序, 匯輝送貨資料.單價, 匯輝送貨資料.金額單位, 匯輝送貨資料.送交, 匯輝送貨資料.收費, 匯輝送貨資料.外發, 匯輝送貨資料.Check INTO AddHHAllTable FROM 匯輝送貨資料 WHERE (((匯輝送貨資料.日期) Between ? And ?)) ORDER BY 匯輝送貨資料.缸號"

cmd.CommandText = strsql
cmd.ActiveConnection = CurrentProject.Connection
cat.ActiveConnection = CurrentProject.Connection

prm.Type = adDate
cmd.Parameters.Append prm
Set prm = Nothing
prm.Type = adDate
cmd.Parameters.Append prm
Set prm = Nothing

cmd.Parameters(0) = Me.begindate /*開始引用窗體日期。如果您想生成默認值可以試
cmd.Parameters(1) = Me.enddate   /* 直接賦一具體數值。然后用盼斷如果窗體引用值
cmd.Execute                     /*若為空則提供默認值。否則引用窗體值。  
Set cmd = Nothing

exit_sub:
Exit Sub
'err_this:
'MsgBox Err.Description
'Resume exit_sub

err_this:
If Err.Number = -2147217900 Then

   If (MsgBox("預生成的表已存在,DEL他嗎?", vbOKCancel, "hg") = vbOK) Then
            cat.Tables.Delete "AddHHAllTable"
            cat.Tables.Refresh
            Set cat = Nothing
            GoTo run_cmd

         Else
            MsgBox Err.Description, , Err.Number
        Resume exit_sub
       End If
    End If

End Sub
-------------------------------------------------------
這是本人給朋友寫的一個類似功能。
如果各位改一改我想是行的通的。
作者: youshanzx    时间: 2002-6-1 05:55
斑竹慈悲为怀,又在此出手了!!!(还是日期问题)哈哈



                                        ------------------------------------
                                            勿以恶小而为之,勿以善小而不为
作者: zhuyiwen    时间: 2002-6-1 05:59

主要是看了你的签名。

勿以恶小而为之,勿以善小而不为[em26][em26][em26]
作者: youshanzx    时间: 2002-6-1 06:09
日期查询几乎是每一个学习access的必经之路,而您提供的范例我感觉不是一个新手能够做出来的.因此,该范例对很多新手都会很有用.


                                              -------------------------------
                                               勿以恶小而为之,勿以善小而不为
作者: nzlwc_fsb    时间: 2006-1-7 07:02

作者: 130050007    时间: 2011-6-3 05:32
good





欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3