Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

check box filter und exportieren

Begonnen von mmaatouk, Mai 11, 2015, 14:26:21

⏪ vorheriges - nächstes ⏩

mmaatouk

Hallo
ich habe in formulare duch check box gefiltert und vba funktion
was muss in krieterien schreiben in abfrage damit ich bei exportieren die filterung von check box mit exportierung
Private Sub flt_Status()
    Dim strKrit As String
    Dim strKritt As String

   
    If Nz(Me!K_Aktiv, 0) = True Then
        strKrit = strKrit & " OR Instr([Status],'1') > 0"
           
    If Nz(Me!K_Nicht_Überwacht, 0) = True And Nz(Me!K_Überwacht, 0) = False Then
        strKritt = strKrit & " AND Instr([Überwachung],'0') > 0"
        strKrit = strKritt
    End If
    If Nz(Me!K_Überwacht, 0) = True And Nz(Me!K_Nicht_Überwacht, 0) = False Then
       strKritt = strKrit & " AND  Instr([Überwachung],'1') > 0"
        strKrit = strKritt
    End If
    End If
   
   
    If Nz(Me!K_Fällig, 0) = True Then
        strKrit = strKrit & " OR Instr([Status],'2') > 0"
           
    If Nz(Me!K_Nicht_Überwacht, 0) = True And Nz(Me!K_Überwacht, 0) = False Then
        strKritt = strKrit & " AND Instr([Überwachung],'0') > 0"
        strKrit = strKritt
    End If
    If Nz(Me!K_Überwacht, 0) = True And Nz(Me!K_Nicht_Überwacht, 0) = False Then
       strKritt = strKrit & " AND  Instr([Überwachung],'1') > 0"
        strKrit = strKritt
    End If
       
   
    End If
   
   
    If Nz(Me!K_Gesperrt, 0) = True Then
        strKrit = strKrit & " OR Instr([Status],'3') > 0"
           
    If Nz(Me!K_Nicht_Überwacht, 0) = True And Nz(Me!K_Überwacht, 0) = False Then
        strKritt = strKrit & " AND Instr([Überwachung],'0') > 0"
        strKrit = strKritt
    End If
    If Nz(Me!K_Überwacht, 0) = True And Nz(Me!K_Nicht_Überwacht, 0) = False Then
       strKritt = strKrit & " AND  Instr([Überwachung],'1') > 0"
        strKrit = strKritt
    End If
   
    End If
   
   
    If Nz(Me!K_Still, 0) = True Then
        strKrit = strKrit & " OR Instr([Status],'4') > 0"
           
    If Nz(Me!K_Nicht_Überwacht, 0) = True And Nz(Me!K_Überwacht, 0) = False Then
        strKritt = strKrit & " AND Instr([Überwachung],'0') > 0"
        strKrit = strKritt
    End If
    If Nz(Me!K_Überwacht, 0) = True And Nz(Me!K_Nicht_Überwacht, 0) = False Then
       strKritt = strKrit & " AND  Instr([Überwachung],'1') > 0"
        strKrit = strKritt
    End If
   
    End If
   
   
    If Nz(Me!K_Ab, 0) = True Then
        strKrit = strKrit & " OR Instr([Status],'5') > 0"
           
    If Nz(Me!K_Nicht_Überwacht, 0) = True And Nz(Me!K_Überwacht, 0) = False Then
        strKritt = strKrit & " AND Instr([Überwachung],'0') > 0"
        strKrit = strKritt
    End If
    If Nz(Me!K_Überwacht, 0) = True And Nz(Me!K_Nicht_Überwacht, 0) = False Then
       strKritt = strKrit & " AND  Instr([Überwachung],'1') > 0"
        strKrit = strKritt
    End If
   
    End If
   
   
   
    If Nz(Me!K_Nicht_Überwacht, 0) = True And Nz(Me!K_Überwacht, 0) = False Then
        strKritt = strKrit & " AND Instr([Überwachung],'0') > 0"
        strKrit = strKritt
    End If
    If Nz(Me!K_Überwacht, 0) = True And Nz(Me!K_Nicht_Überwacht, 0) = False Then
       strKritt = strKrit & " AND  Instr([Überwachung],'1') > 0"
        strKrit = strKritt
    End If
   
   
     
     
   
     If Len(strKrit) > 0 Then
        Me.Filter = Mid(strKrit, 5)
        Me.FilterOn = True
    Else
        Me.Filter = ""
        Me.FilterOn = False
    End If
End Sub
[/color]

MaggieMay

Hi,

ich denke, es ist an der Zeit mal ein kleine Beispiel-DB zu deinem Filterproblem hochzuladen.
Vermutlich lässt sich das alles wesentlich einfacher lösen.

    If Nz(Me!K_Nicht_Überwacht, 0) = True And Nz(Me!K_Überwacht, 0) = False Then
    ...
    If Nz(Me!K_Überwacht, 0) = True And Nz(Me!K_Nicht_Überwacht, 0) = False Then
    ...

Was machst du wenn beides True oder False ist??
Wie, das darf nicht vorkommen? Wie fängst du es denn ab?
Hier wäre wohl eine Optionsgruppe die bessere Wahl.
Freundliche Grüße
MaggieMay