Hallo,
habe mich schon "zu Tode" gegoogelt.
Ich habe in einem Bericht 2 berechnete Felder. Nun soll jeweils nur das Feld angezeigt werden, daß den größeren Wert erechnet hat.
Wenn Feld "Positionssumme" < als Feld "Wert" dann unsichtbar
wenn es größer ist dann Feld "Wert" unsichtbar.
Kann mir bitte jemand den VBA-Code für den Access-Bericht nennen? Danke!
Hallo,
im Ereignis "Beim Formatieren"
Me.PositionsSumme.Visible = (Me.PositionsSumme > Me.Wert)
Analog dazu auch für das Feld "Wert".
PS:
Auf einen Feldnamen "Wert" solltest Du verzichten. Das ist auch eine Funktion und daher für eigene Namen nicht zu empfehlen.
Danke,
habe jetzt den Namen von "Wert" auf "PSPCI" umgeändert.
Ich bekomme folegnde Fehlermeldung:
Laufzeitfehler '2427':
Sie haben einen Ausdruck ohne Wert eingegeben.
Mein VBA-Code:
Private Sub Report_Open(Cancel As Integer)
RunCommand acCmdAppMaximize
DoCmd.Maximize
Me.Positionssumme.Visible = (Me.Positionssumme > Me.PSPCI)
Me.PSPCI.Visible = (Me.Positionssumme < Me.PSPCI)
End Sub
Hallo,
vielleicht solltest Du lesen was ich schreibe. ;D
Zitatim Ereignis "Beim Formatieren"
In Report_Open sind noch keine Daten geladen. Die beiden Ausdrücke gehören jeweils in das Format-Ereignis des Bereichs, in dem die Felder angesiedelt sind.
Guten Morgen,
kann jetzt erst wieder dran weiter arbeiten.
Danke für den Hinweis "Beim Formatieren", habe den Code jetzt in den Gruppenkopf (da werden die Daten berechnet) geschrieben.
Nun erhalte ich die Fehlermeldung:
Laufzeitfehler '94':
Unzulässige Verwendung von Null
Für berechnete Steuerelemente wird man andere Strategien, wie z. Bsp. die bedingte Formatierung, verwenden (einfach die Textfarbe auf die Hintergrundfarbe setzen).
Danke für den Tip.
Wie sieht es dann mit der Addierung der Werte aus? Es soll nur der jeweils größere Wert berücksichtigt werden.
Wir kennen weder Daten, Bericht, noch Berechnung - am besten lädst Du eine abgespeckte DB mit dem Bericht hoch und teilst mit, was wann wo ausgeblendet sein soll.
genau mein Problem ...
wie sieht es aus wenn die Positionssumme grundsätzlich sichtbar ist wenn die Positionssumme größer null ist
Me.PositionsSumme.Visible = (Me.PositionsSumme > 0)
???
Hallo,
ZitatUnzulässige Verwendung von Null
warum dann nicht:
Me!PositionsSumme.Visible = (nz(Me!PositionsSumme,0) > nz(Me!Wert,0))
(Beim Bericht nehme ich grundsätzlich das "!"- Zeichen bei Referenzen auf Berichts-Felder.)