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
Hallo,
wo kommt denn Gestr her?
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
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
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 ?