2016-01-13 73 views
0

我對通常的Access和編程頗爲陌生。查詢條件中使用的函數 - 運行時錯誤2486

我有一個數據庫的用戶有不同的狀態,即。活躍,非活躍,VIP。我正在製作一個報表,從查詢中獲取數據。其中一個查詢條件應該與複選框匹配。

Checkboxes

我創建了一個功能SeznamClanov()返回,我在我的查詢條件使用字符串。

Public Function SeznamClanov() As String 

Dim Predhodnik As Boolean 

DoCmd.OpenForm "IzpisClanovSubF" 

Predhodnik = False 

If Forms!IzpisClanovSubF!CheckAktivni.Value <> 0 Then 
    SeznamClanov = "1" 
    Predhodnik = True 
End If 

If Forms!IzpisClanovSubF!CheckNeaktivni.Value <> 0 Then 
    If Predhodnik = True Then 
    SeznamClanov = SeznamClanov & "& 2" 
    Else 
    SeznamClanov = SeznamClanov & "2" 
    End If 

    Predhodnik = True 
End If 

If Forms!IzpisClanovSubF!CheckIzpisani.Value <> 0 Then 
    If Predhodnik = True Then 
    SeznamClanov = SeznamClanov & " & 4" 
    Else 
    SeznamClanov = SeznamClanov & "4" 
    End If 

    Predhodnik = True 
End If 

If Forms!IzpisClanovSubF!CheckPokojni.Value <> 0 Then 
    If Predhodnik = True Then 
    SeznamClanov = SeznamClanov & " & 5" 
    Else 
    SeznamClanov = SeznamClanov & "5" 
    End If 

    Predhodnik = True 
End If 

If Forms!IzpisClanovSubF!CheckVIP.Value <> 0 Then 
    If Predhodnik = True Then 
    SeznamClanov = SeznamClanov & " & 6" 
    Else 
    SeznamClanov = SeznamClanov & "6" 
    End If 

End If 

End Function 

當我一步一步地經過這個功能,一切工作正常。問題是當我在查詢中使用這個函數時 - 我得到一個錯誤:運行時錯誤'2486':你目前無法執行這個動作。

當我運行調試工具,它停止在該行

DoCmd.OpenForm "IzpisClanovSubF" 

爲什麼會出現這個錯誤?有沒有更簡單的方法來解決這個問題?

感謝您的幫助提前。

此致敬禮!

+0

我有嚴重的問題,看什麼看起來像混淆符號。或者可能是非英文的命名約定。此外,請不要包含圖片鏈接(而應將其添加到降價中)。 – SmokeDispenser

回答

0

你不能這麼做 - 打開每一條記錄的表單。

從功能中刪除此命令:

DoCmd.OpenForm "IzpisClanovSubF" 

並運行它打開查詢之前。

+0

我不打開每個記錄的表單。表單上有一個按鈕,應該打開一個報告,根據複選框中的選項列出用戶。每個用戶都有一個狀態(例如:1 =活動,2 =非活動,6 = VIP等)。如果您點擊一個複選框,表示活動 - 我不想只顯示活動狀態的用戶列表。如果您在Active和VIP中有複選框 - 我希望報告中有這兩個用戶組的列表。我只在本報告正在使用的查詢中調用此函數。 SELECT [COLUMNS] WHERE ClanT.StatusClana = SeznamClanov() – buri87

+0

您寫道:_The問題是當我在查詢中使用此函數..._這是一個禁忌......您不打開窗體運行查詢。 – Gustav

+0

表格已經打開。當我按下按鈕時,這會打開一個報告。報表從查詢獲取數據,該查詢使用函數SeznamClanov()作爲條件(過濾器)。該函數從Form上的複選框獲取數據,並返回一個字符串,這些字符串在查詢中使用。 – buri87