Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: hase198312 am Juli 28, 2015, 09:47:11

Titel: Datensätze aus gefilterten Unterformular in Bericht anzeigen
Beitrag von: hase198312 am Juli 28, 2015, 09:47:11
Hallo Leute,

ich habe folgendes Problem:

bei mir wird der Inhalt eines Unterformulars über die Auswahl eines Kombinationsfeldes, dass sich im Hauptformular befindet, gefiltert. Im Unterformular habe ich noch ein Button "nach Datum sortieren" mit Macro "FestlegenFilter" (Datum:Zwischen von Und bis) erstellt.

Nun möchte ich gerne die gefilterten Daten als Bericht öffnen. Wenn ich ein Button "Bericht öffnen" erstelle und darauf klicke, werden alle Daten angezeigt und nicht gefilterte.

Ich bin im VBA nicht mal ein Anfänger, und hoffe jemand kann mir helfen

Ich bedanke mich im voraus

Schöne Grüße

Hase
Titel: Re: Datensätze aus gefilterten Unterformular in Bericht anzeigen
Beitrag von: DF6GL am Juli 28, 2015, 11:17:20
Hallo,

in der Berichtsabfrage muss als Filterkriterium der Verweis auf das Form-Kombifeld und dem Datums-Bereich eingesetzt werden.

oder

Verwende im ÖffnenBericht-Makro unter "Bedingung=" das Form-Kombifeld und den Datumsbereich....


oder

Öffne den Bericht mit der Openreport-Methode und den dort ebenfalls anzugebenden Kriterien in der Ereignisprozedur "Beim Klicken" der Schaltfläche...
Titel: Re: Datensätze aus gefilterten Unterformular in Bericht anzeigen
Beitrag von: MaggieMay am Juli 28, 2015, 11:29:50
Hi,

du kannst den Filter des Unterformulars beim Öffnen des Berichts (aus dem Hauptformular heraus) übergeben - sofern er zur Datenquelle des Berichts passt.

VBA-Beispiel:
If Me.uf.Form.FilterOn = True Then
    DoCmd.OpenReport "bericht", acViewPreview, , Me.uf.Form.Filter
Else
    DoCmd.OpenReport "bericht", acViewPreview    ', , Me.uf.Form.Filter
End If


{Edit: im Else-Fall wird natürlich nicht gefiltert!}
Titel: Re: Datensätze aus gefilterten Unterformular in Bericht anzeigen
Beitrag von: hase198312 am August 01, 2015, 13:22:18
Hallo Leute,
Vielen Dank für ihre Vorschläge, aber wahrscheinlich bin ich zu Dumm, weil ich damit nicht viel anfangen kann :-[
Zitat von: MaggieMay am Juli 28, 2015, 11:29:50
VBA-Beispiel:
If Me.uf.Form.FilterOn = True Then
    DoCmd.OpenReport "bericht", acViewPreview, , Me.uf.Form.Filter
Else
    DoCmd.OpenReport "bericht", acViewPreview, , Me.uf.Form.Filter
End If

Hier bekomme ich einen Fehler, weil ich ganz bestimmt etwas falsch geschrieben habe

Zitat von: DF6GL am Juli 28, 2015, 11:17:20

Verwende im ÖffnenBericht-Makro unter "Bedingung=" das Form-Kombifeld und den Datumsbereich....

Und hier kann ich keine richtige Bedingung formulieren :-[

Ich habe meine DB hochgeladen, hoffe das bringt mich weiter

Vielen Dank

Hase
Titel: Re: Datensätze aus gefilterten Unterformular in Bericht anzeigen
Beitrag von: MaggieMay am August 01, 2015, 20:31:14
Hallo,
ZitatHier bekomme ich einen Fehler, weil ich ganz bestimmt etwas falsch geschrieben habe
ich war davon ausgegangen, dass der Button im Hauptformular steckt und hatte das auch so geschrieben, das macht natürlich einen Unterschied. Außerdem wird bei der Bezugnahme auf den Filter des Unterformulars der Name des Unterformular-Steuerelements im Hauptformular gebraucht und nicht der Name des Unterformulars selbst.

So also könnte der Bericht mit dem Filter des Unterformulars aus dem Unterformular heraus geöffnet werden:
Private Sub Befehl47_Click()
    If Me.FilterOn = True Then
        DoCmd.OpenReport "bericht", acViewPreview, , Me.Filter
    Else
        DoCmd.OpenReport "bericht", acViewPreview
    End If
End Sub

wenn denn die Datenquelle des Berichts mit der des Unterformulars übereinstimmen würde.
Auch das hatte ich bereits geschrieben.

Warum werden die Daten dort in einem Unterbericht angezeigt?


BTW:
In einem Bericht ist ein Kombifeld fehl am Platz.

Und wenn es lediglich um die Filterung nach einer Warengruppe geht, so könnte die auch aus dem HF übernommen werden.

Insgesamt ist das Beispiel mAn nicht wirklich realistisch.