Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Bedingt formatierte Zeilen in einem Bericht

Begonnen von Striving_Tom, Januar 31, 2020, 17:54:10

⏪ vorheriges - nächstes ⏩

Striving_Tom

Hallo,

ich möchte einen Bericht erstellen, in dem Zeilen (Datensätze) entsprechend einer Bedingung formatiert werden. Ich habe schon mal einen Bericht gesehen, in dem das der Fall war, konnte dieses aber nicht nachbilden anpassen und weiß nicht woran es liegt, bzw. was zu berücksichtigen ist.

Zur Situation:
In einer Tabelle sind die Artikel des Lieferprogramms enthalten. Die Artikelnummer bildet den Primärschlüssel. Nun sind einige Artikel "gelöscht" (nicht wirklich gelöscht, aber in der Tabelle als "gelöscht" gekennzeichnet) bzw. die Artikel haben einen Lieferstatus "lieferbar" oder auch "z.Z. nicht lieferbar".

Ich möchte aus der Artikeltabelle einen Report erstellen, der alle Artikel geordnet nach der Artikelnummer  (mit einigen Zusatzangaben zum Artikel, natürlich) auflistet. Außerdem soll in dem Report (der Gesamt-Artikel-Liste) jede Zeile mit einem gelöschten bzw. mit einem nicht lieferbaren Artikel "durchgestrichen" werden. (Ggfs. könnte zusätzlich auch noch eine farbliche Hervorhebung erfolgen, wie im beigefügten Code vorgesehen.)

Folgender Code ist aus einem anderen Bericht entnommen und bestmöglich angepasst, funktioniert aber noch nicht. Mir fehlt noch das Verständnis für die Bedeutung/Funktion/Notwendigkeit der einzelnen Elemente des Codes und ob bestimmte Dinge an anderer Stelle definiert wurden.  (Müssen Variablen o. Konstanten o.ä. "zentral" definiert werden oder geht es auch "direkt an dieser Stelle" ?)

Private Sub Detailbereich_Format(Cancel As Integer, FormatCount As Integer)
    If Gestr = -1 Then
    Me.Detailbereich.BackColor = 13408767
    Me.Linie33.Visible = True
    Else
    Me.Detailbereich.BackColor = 13434828
    Me.Linie33.Visible = False
    End If
End Sub


Ich verstehe, dass die (Durchstreich-)Linie [Linie33] immer "da" ist, aber nur bei den Artikeln mit "Löschungskennzeichen" sichtbar und ansonsten unsichtbar ist. Worauf muss ich achten, um die gewünschte Funktion/Formatierung im Bericht zu erhalten?

Viele Grüße
Thommy


MzKlMu

Gruß Klaus

Striving_Tom

Wenn ich das richtig verstehe, dann ist "Gestr" das Feld, in dem der Vermerk "gestrichen" (gelöscht) enthalten ist. In dem als Vorbild verwendeten Beispiel enthielt das Feld nur eine JA/NEIN-Angabe.


Mir ist auch noch nicht klar, warum auf "-1" getestet wird. Ist das vielleicht eine Konvention für "JA/NEIN"-Felder (Boolesche Variablen)? Ich hätte "0" für NEIN / FALSCH bzw. "1" für JA / WAHR erwartet.

Viele Grüße
Thommy

Beaker s.a.

Hallo Thommy,
Heisst das Feld denn bei dir genauso?
Auch hier würde ich explizit mit "Me." referenzieren.
In Access/VBA steht 0 für False (Falsch/Nein) und -1 für True (Wahr/Ja).
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

MzKlMu

Hallo,
ZitatWenn ich das richtig verstehe, dann ist "Gestr" das Feld, in dem der Vermerk "gestrichen" (gelöscht) enthalten ist.
Das kannst doch nur Du wissen, wo dieses Feld herkommt. Ist das im Formular (bzw. Datenherkunft) vorhanden und ist das auch ein Ja/Nein Feld ?
Gruß Klaus