設(shè)為首頁收藏本站Access中國

Office中國論壇/Access中國論壇

 找回密碼
 注冊

QQ登錄

只需一步,快速開始

12下一頁
返回列表 發(fā)新帖
查看: 4178|回復(fù): 11
打印 上一主題 下一主題

[查詢] 求助窗體聯(lián)動(dòng)的多條件選擇查詢?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
1#
發(fā)表于 2008-12-29 00:18:05 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
我做了個(gè)查詢,在查詢窗體中想實(shí)現(xiàn)實(shí)現(xiàn)1個(gè)或者多個(gè)條件選擇查詢,我些了查詢的語句,可加入后沒辦法實(shí)現(xiàn),所以我就把語句放在TXT文件里了,請求各位老師幫忙。。!
[

[ 本帖最后由 htlsb 于 2009-1-1 00:26 編輯 ]

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有帳號(hào)?注冊

x
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 分享淘帖 訂閱訂閱
2#
 樓主| 發(fā)表于 2008-12-29 00:20:00 | 只看該作者
如果能在TXT里加點(diǎn)簡易的實(shí)現(xiàn)的解釋方便我理解更好!
3#
發(fā)表于 2008-12-29 04:01:21 | 只看該作者
4#
 樓主| 發(fā)表于 2008-12-29 12:59:39 | 只看該作者
我就是學(xué)習(xí)劉大的查詢1做的 ,不過不知道什么原因,查詢語句寫進(jìn)查詢條件就出問題查詢的子窗體也不引用了
5#
發(fā)表于 2008-12-29 13:32:19 | 只看該作者
看了一下,有一點(diǎn)想法,不知道對不對,您可以先試一試。
您寫的代碼里,引用了窗體的Requery屬性,不知道窗體對象有沒有Requery的屬性。如果有可能,還是應(yīng)該先把子窗體的查詢r(jià)equery一下,之后再使用子窗體,這樣比較穩(wěn)妥。
6#
 樓主| 發(fā)表于 2008-12-29 14:00:00 | 只看該作者
這是我中午做的,可是不知道什么原因,老是引用錯(cuò)誤,那個(gè)計(jì)數(shù)和合計(jì)是后加的,能正常使用,麻煩指點(diǎn)下,看看什么問題

Option Compare Database
Option Explicit

Private Sub cmd查詢_Click()
On Error GoTo Err_cmd查詢_Click

    Dim strWhere As String
   
    strWhere = ""
   
    If Not IsNull(Me.城區(qū)) Then
        strWhere = strWhere & "([城區(qū)] like '*" & Me.城區(qū) & "*') AND "
    End If
   
    If Not IsNull(Me.路段) Then
        strWhere = strWhere & "([路段] like '" & Me.路段 & "') AND "
    End If

    If Not IsNull(Me.廣告類型) Then
        strWhere = strWhere & "([廣告類型] like '*" & Me.廣告類型 & "*') AND "
    End If

    If Not IsNull(Me.廣告內(nèi)容) Then
        strWhere = strWhere & "([廣告內(nèi)容] like '" & Me.廣告內(nèi)容 & "') AND "
    End If
   
    If Not IsNull(Me.廣告發(fā)布方) Then
        strWhere = strWhere & "([廣告發(fā)布方] like '" & Me.廣告發(fā)布方 & "') AND "
    End If

    If Not IsNull(Me.面積開始) Then
        strWhere = strWhere & "([面積] >= " & Me.面積開始 & ") AND "
    End If
    If Not IsNull(Me.面積截止) Then
        strWhere = strWhere & "([面積] <= " & Me.面積截止 & ") AND "
    End If
   
   
    If Not IsNull(Me.發(fā)布時(shí)間開始) Then
        strWhere = strWhere & "([發(fā)布時(shí)間] >= #" & Format(Me.發(fā)布時(shí)間開始, "yyyy-mm-dd") & "#) AND "
    End If
    If Not IsNull(Me.進(jìn)書日期截止) Then
        strWhere = strWhere & "([發(fā)布時(shí)間] <= #" & Format(Me.發(fā)布時(shí)間截止, "yyyy-mm-dd") & "#) AND "
    End If
   
    If Len(strWhere) > 0 Then
        strWhere = Left(strWhere, Len(strWhere) - 5)
    End If
   
    Debug.Print strWhere
   
    Me.全城區(qū)廣告查詢窗體.Form.Filter = strWhere
    Me.全城區(qū)廣告查詢窗體.Form.FilterOn = True
   
    Call CheckSubformCount


Exit_cmd查詢_Click:
    Exit Sub

Err_cmd查詢_Click:
    MsgBox Err.Description
    Resume Exit_cmd查詢_Click
   
End Sub



Private Sub cmd清除_Click()
On Error GoTo Err_cmd清除_Click
    Dim ctl As Control
   
    For Each ctl In Me.Controls
   
        Select Case ctl.ControlType
            Case acTextBox
                If ctl.Locked = False Then ctl.Value = Null
               
            Case acComboBox
                ctl.Value = Null
        
        End Select
    Next
   
    '取消子窗體的篩選
    Me.全城區(qū)廣告查詢窗體.Form.Filter = ""
    Me.全城區(qū)廣告查詢窗體.Form.FilterOn = False
   
    Call CheckSubformCount

Exit_cmd清除_Click:
    Exit Sub

Err_cmd清除_Click:
    MsgBox Err.Description
    Resume Exit_cmd清除_Click
   
End Sub

Private Sub CheckSubformCount()

    If Me.存書查詢子窗體.Form.Recordset.RecordCount > 0 Then
        '子窗體的記錄數(shù)>0
        Me.計(jì)數(shù).ControlSource = "=[全城區(qū)廣告查詢窗體].[Form].[txt計(jì)數(shù)]"
        Me.面積.ControlSource = "=[全城區(qū)廣告查詢窗體].[Form].[txt面積合計(jì)]"
    Else
        '子窗體的記錄數(shù)=0
        Me.計(jì)數(shù).ControlSource = "=0"
        Me.合計(jì).ControlSource = "=0"
    End If  
End Sub

Private Sub 城區(qū)_afterupdate()
    Me.路段.RowSource = "select 路段,路段編號(hào) from 城區(qū)路段表 where 城區(qū)='" & Me.城區(qū) & "'"
End Sub

Private Sub 路段_AfterUpdate()
    Me.全城區(qū)廣告查詢窗體.Form.Filter = "路段編號(hào)='" & Me.路段 & "'"
    Me.全城區(qū)廣告查詢窗體.Form.FilterOn = True
End Sub
7#
 樓主| 發(fā)表于 2008-12-29 22:28:20 | 只看該作者
怎么沒人理我啊,那位老師幫忙解決下啊
8#
發(fā)表于 2008-12-29 22:46:49 | 只看該作者
3樓鏈接里有個(gè)word文檔你好好看看
9#
發(fā)表于 2008-12-30 07:06:10 | 只看該作者
6D老師這么早就來看帖,辛苦了[:49]
10#
 樓主| 發(fā)表于 2008-12-30 17:03:34 | 只看該作者
哎,搞了好久了,可這查詢的代碼還是沒辦法運(yùn)行,誰幫我看看問題在哪啊?
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則

QQ|站長郵箱|小黑屋|手機(jī)版|Office中國/Access中國 ( 粵ICP備10043721號(hào)-1 )  

GMT+8, 2024-10-23 10:26 , Processed in 0.237119 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回復(fù) 返回頂部 返回列表