Discussion:
Geburtstage im Bericht farblich formatieren Office 2010
(zu alt für eine Antwort)
HR Ernst
2020-03-03 17:01:39 UTC
Permalink
Hallo,

nach langer Zeit möchte ich meine Datenbankenberichte etwas verschönern.

Ich möchte Geburtstage mit Endung "5" (5, 15, 25,...) farblich und
farblich anders die mit Endung "0" (10, 20, 30,...) darstellen lassen. Das
geht ja mit der bedingten Formatierung. Bei Excel verwende ich dazu die
Formeln: =REST(R2;5)=0 (für die 5er am Ende) und =REST(R2;10)=0 (für die
0er am Ende).

Welche Formel muss ich bei Access verwenden? Die Formel von Excel
funktionieren so nicht.

Auf Karls FAQ-Seite http://www.donkarl.com habe ich nichts Entsprechendes
(unter "Berichte") gefunden. Vielleicht war meine Fragestellung auch
verkehrt... ;-)

Vielen Dank vorab.
--
Gruß

HR Ernst
Ulrich Möller
2020-03-04 10:11:27 UTC
Permalink
Hallo,
Post by HR Ernst
Ich möchte Geburtstage mit Endung "5" (5, 15, 25,...) farblich und
farblich anders die mit Endung "0" (10, 20, 30,...) darstellen lassen. Das
geht ja mit der bedingten Formatierung. Bei Excel verwende ich dazu die
Formeln: =REST(R2;5)=0 (für die 5er am Ende) und =REST(R2;10)=0 (für die
0er am Ende).
Welche Formel muss ich bei Access verwenden? Die Formel von Excel
funktionieren so nicht.
das entsprechende Gegenstück heißt "mod".
Beispiel:

= ((R2 mod 5) = 0)

Ulrich
HR Ernst
2020-03-04 11:07:37 UTC
Permalink
Post by HR Ernst
Hallo,
Post by HR Ernst
Ich möchte Geburtstage mit Endung "5" (5, 15, 25,...) farblich und
farblich anders die mit Endung "0" (10, 20, 30,...) darstellen lassen. Das
geht ja mit der bedingten Formatierung. Bei Excel verwende ich dazu die
Formeln: =REST(R2;5)=0 (für die 5er am Ende) und =REST(R2;10)=0 (für die
0er am Ende).
Welche Formel muss ich bei Access verwenden? Die Formel von Excel
funktionieren so nicht.
das entsprechende Gegenstück heißt "mod".
= ((R2 mod 5) = 0)
Ulrich
Mit *Rechtsklick* im Bericht auf z.B. das Feld "Alter1" habe ich die
bedingte Formatierung gewählt und dort "Wert gleich ((R2 mod 5) = 0)"
angegeben mit entsprechender Schriftfarbe, Stil und Hintergrundfarbe. Ist
das überhaupt die richtige Vorgehensweise?

Daraus macht Access (([R2] Mod 5)=0) und wenn ich den Bericht öffne, fragt
Access nach: Parameterwert eingeben für R2 und wenn ich dort 0 oder 2 oder
was auch immer (?) eingebe, wird bei den Altersangaben im Bericht nichts
eingefärbt. Bei Excel sehe ich das Ergebnis sofort beim Klick auf
"Anwenden".
--
Gruß

HR Ernst
Karl Donaubauer
2020-03-04 11:17:07 UTC
Permalink
Hallo!
Post by HR Ernst
Post by HR Ernst
Ich möchte Geburtstage mit Endung "5" (5, 15, 25,...) farblich und
farblich anders die mit Endung "0" (10, 20, 30,...) darstellen lassen. Das
geht ja mit der bedingten Formatierung. Bei Excel verwende ich dazu die
Formeln: =REST(R2;5)=0 (für die 5er am Ende) und =REST(R2;10)=0 (für die
0er am Ende).
...
bedingte Formatierung gewählt und dort "Wert gleich ((R2 mod 5) = 0)"
...
Falls du "Feldwert ist" meinst, dann nimm stattdessen "Ausdruck ist".
--
Servus
Karl
*********
http://www.AccessDevCon.com
Access FAQ: http://www.donkarl.com
HR Ernst
2020-03-04 11:46:14 UTC
Permalink
Post by Karl Donaubauer
Hallo!
Post by HR Ernst
Post by HR Ernst
Ich möchte Geburtstage mit Endung "5" (5, 15, 25,...) farblich und
farblich anders die mit Endung "0" (10, 20, 30,...) darstellen lassen. Das
geht ja mit der bedingten Formatierung. Bei Excel verwende ich dazu die
Formeln: =REST(R2;5)=0 (für die 5er am Ende) und =REST(R2;10)=0 (für die
0er am Ende).
...
bedingte Formatierung gewählt und dort "Wert gleich ((R2 mod 5) = 0)"
...
Falls du "Feldwert ist" meinst, dann nimm stattdessen "Ausdruck ist".
Jetzt (mit "Ausdruck ist") macht Access aus ((R2 mod 5) = 0 wieder (([R2]
Mod 5)=0) und will eine Eingabe des Parameterwerts für R2. Bei 0 werden
*alle* Altersangaben z.B. rot eingefärbt und bei Eingabe von 1, 2, 3,...
bleiben alle Altersangaben schwarz.

Irgendetwas mache ich irgendwo doch wohl falsch, oder?

Im Internet habe ich auch keine Lösungen gefunden. Und, wie geschrieben,
bei Excel funktioniert es hervorragend.
--
Gruß

HR Ernst
Karl Donaubauer
2020-03-04 12:01:28 UTC
Permalink
Hallo!
Post by HR Ernst
Post by HR Ernst
...
Post by HR Ernst
Ich möchte Geburtstage mit Endung "5" (5, 15, 25,...) farblich und
farblich anders die mit Endung "0" (10, 20, 30,...) darstellen lassen. Das
geht ja mit der bedingten Formatierung. Bei Excel verwende ich dazu die
Formeln: =REST(R2;5)=0 (für die 5er am Ende) und =REST(R2;10)=0 (für die
0er am Ende).
...
bedingte Formatierung gewählt und dort "Wert gleich ((R2 mod 5) = 0)"
...
Jetzt (mit "Ausdruck ist") macht Access aus ((R2 mod 5) = 0 wieder (([R2]
Mod 5)=0) und will eine Eingabe des Parameterwerts für R2. Bei 0 werden
*alle* Altersangaben z.B. rot eingefärbt und bei Eingabe von 1, 2, 3,...
bleiben alle Altersangaben schwarz.
Irgendetwas mache ich irgendwo doch wohl falsch, oder?
...
Access erkennt "R2" nicht. Überprüfe nochmal, wie das Feld oder
Steuerelement, auf dass du dich beziehst, wirklich heißt.

Wenn du den Fehler nicht findest, dann mache einen einfachen Test:

Erstelle ein neues Textfeld im Formular und verwende als
Steuerelementinhalt: =R2

Klappt das?
--
Servus
Karl
*********
http://www.AccessDevCon.com
Access FAQ: http://www.donkarl.com
HR Ernst
2020-03-04 12:15:45 UTC
Permalink
Post by Karl Donaubauer
Hallo!
Post by HR Ernst
Post by HR Ernst
...
Post by HR Ernst
Ich möchte Geburtstage mit Endung "5" (5, 15, 25,...) farblich und
farblich anders die mit Endung "0" (10, 20, 30,...) darstellen lassen. Das
geht ja mit der bedingten Formatierung. Bei Excel verwende ich dazu die
Formeln: =REST(R2;5)=0 (für die 5er am Ende) und =REST(R2;10)=0 (für die
0er am Ende).
...
bedingte Formatierung gewählt und dort "Wert gleich ((R2 mod 5) = 0)"
...
Jetzt (mit "Ausdruck ist") macht Access aus ((R2 mod 5) = 0 wieder (([R2]
Mod 5)=0) und will eine Eingabe des Parameterwerts für R2. Bei 0 werden
*alle* Altersangaben z.B. rot eingefärbt und bei Eingabe von 1, 2, 3,...
bleiben alle Altersangaben schwarz.
Irgendetwas mache ich irgendwo doch wohl falsch, oder?
...
Access erkennt "R2" nicht. Überprüfe nochmal, wie das Feld oder
Steuerelement, auf dass du dich beziehst, wirklich heißt.
Ich gehe so vor: Im Formular kann ich mehrere Berichte (Code in VBA
erstellt) mittels eines ungebundenen Feldes aufrufen. Im Bericht von z.B.
"Geburtstage" wähle ich dann das "blaue Geo-Dreieck" für die
Entwurfsansicht. Mit Rechtsklick auf das "Datenfeld" Alter1 im
Detailbereich versuche ich dann, die bedingte Formtierung vorzunehmen.
Post by Karl Donaubauer
Erstelle ein neues Textfeld im Formular und verwende als
Steuerelementinhalt: =R2
Klappt das?
Das werde ich bestimmt noch angehen. Warum wird aber nach Eingabe des
Parameterwerts für R2 von 0 werden *alle* Altersangaben z.B. rot
eingefärbt und bei Eingabe von 1, 2, 3,... bleiben alle Altersangaben
schwarz? R2 scheint (zwar falsch, aber immerhin) zu reagieren, oder liege
ich schon wieder falsch?
--
Gruß

HR Ernst
Karl Donaubauer
2020-03-04 12:41:42 UTC
Permalink
Hallo!
Post by Karl Donaubauer
Post by HR Ernst
...
Jetzt (mit "Ausdruck ist") macht Access aus ((R2 mod 5) = 0 wieder (([R2]
Mod 5)=0) und will eine Eingabe des Parameterwerts für R2. Bei 0 werden
*alle* Altersangaben z.B. rot eingefärbt und bei Eingabe von 1, 2, 3,...
bleiben alle Altersangaben schwarz.
...
Access erkennt "R2" nicht. Überprüfe nochmal, wie das Feld oder
Steuerelement, auf dass du dich beziehst, wirklich heißt.
... Mit Rechtsklick auf das "Datenfeld" Alter1 im
Detailbereich versuche ich dann, die bedingte Formtierung vorzunehmen.
Und warum verwendest du im BF-Ausdruck "R1", wenn das Feld oder
Steuerelement "Alter1" heißt?
Post by Karl Donaubauer
... Warum wird aber nach Eingabe des
Parameterwerts für R2 von 0 werden *alle* Altersangaben z.B. rot
eingefärbt und bei Eingabe von 1, 2, 3,... bleiben alle Altersangaben
schwarz? R2 scheint (zwar falsch, aber immerhin) zu reagieren, oder liege
ich schon wieder falsch?
Mit 5 oder 10... werden sie auch rot, gell? ;-)
Der eingegebene Parameterwert wird statt R2 in der Formel verwendet.
Wenn er durch 5 dividiert den Rest 0 ergibt, dann greift die BF.

Das Ergebnis gilt für alle Datensätze, weil du nur eine konstante Zahl
eingibst.
--
Servus
Karl
*********
http://www.AccessDevCon.com
Access FAQ: http://www.donkarl.com
HR Ernst
2020-03-04 15:14:49 UTC
Permalink
Post by Karl Donaubauer
Hallo!
Post by Karl Donaubauer
Post by HR Ernst
...
Jetzt (mit "Ausdruck ist") macht Access aus ((R2 mod 5) = 0 wieder (([R2]
Mod 5)=0) und will eine Eingabe des Parameterwerts für R2. Bei 0 werden
*alle* Altersangaben z.B. rot eingefärbt und bei Eingabe von 1, 2, 3,...
bleiben alle Altersangaben schwarz.
...
Access erkennt "R2" nicht. Überprüfe nochmal, wie das Feld oder
Steuerelement, auf dass du dich beziehst, wirklich heißt.
... Mit Rechtsklick auf das "Datenfeld" Alter1 im
Detailbereich versuche ich dann, die bedingte Formtierung vorzunehmen.
Und warum verwendest du im BF-Ausdruck "R1", wenn das Feld oder
Steuerelement "Alter1" heißt?
Weil ich die Formel so von Excel übernommen hatte. Ich wuusste nichts
Besseres.
Post by Karl Donaubauer
Post by Karl Donaubauer
... Warum wird aber nach Eingabe des
Parameterwerts für R2 von 0 werden *alle* Altersangaben z.B. rot
eingefärbt und bei Eingabe von 1, 2, 3,... bleiben alle Altersangaben
schwarz? R2 scheint (zwar falsch, aber immerhin) zu reagieren, oder liege
ich schon wieder falsch?
Mit 5 oder 10... werden sie auch rot, gell? ;-)
Richtig! Das hatte ich aber nicht überprüft. Bist du "Hellseher"? <keine
ernst gemeinte Frage!>
Post by Karl Donaubauer
Der eingegebene Parameterwert wird statt R2 in der Formel verwendet.
Wenn er durch 5 dividiert den Rest 0 ergibt, dann greift die BF.
Das Ergebnis gilt für alle Datensätze, weil du nur eine konstante Zahl
eingibst.
Du bist jetzt schon - wie immer (s. meine Probleme mit Access in der
Vergangenheit) - mein Held! Wirklich. Im Ernst!

Die Formeln für Alter1 lauten jetzt:
(([Alter1];5)=0) mit fetter, roter Schrift und weißem Hintergrund und
(([Alter1];10)=0) *eigentlich* mit fetter, roter Schrift und *gelbem*
Hintergrund. Aber bei der 10er "Abfrage" bleibt der Hintergrund auch weiß.

Und: Bei "Alter2", "Alter3",... wird die Schrift nicht rot und der
Hintergrund bleibt weiß. Dort scheinen meine Formeln nicht zu wirken. Dort
sollten sie aber auch Ihre Anwendung finden. Nur wie?

Lieber Karl, ich hoffe, ich nerve dich nicht zu sehr mit meinen
"Kleinigkeiten". Vor allem du hast mir damals (z.B. 2010 news:1j3bwqvxklrma.125jdvizka8gp$***@40tude.net) bei der Erstellung
meiner DBs sehr geholfen. Sie funktionieren ganz toll und problemlos. Was
ich jetzt anstelle, ist eigentlich nur reine Kosmetik, weil ich es in
Excel so gut gefunden hatte. ;-)
--
Gruß

HR Ernst
HR Ernst
2020-03-05 10:02:56 UTC
Permalink
Post by HR Ernst
Post by Karl Donaubauer
Hallo!
Post by Karl Donaubauer
Post by HR Ernst
...
Jetzt (mit "Ausdruck ist") macht Access aus ((R2 mod 5) = 0 wieder (([R2]
Mod 5)=0) und will eine Eingabe des Parameterwerts für R2. Bei 0 werden
*alle* Altersangaben z.B. rot eingefärbt und bei Eingabe von 1, 2, 3,...
bleiben alle Altersangaben schwarz.
...
Access erkennt "R2" nicht. Überprüfe nochmal, wie das Feld oder
Steuerelement, auf dass du dich beziehst, wirklich heißt.
... Mit Rechtsklick auf das "Datenfeld" Alter1 im
Detailbereich versuche ich dann, die bedingte Formtierung vorzunehmen.
Und warum verwendest du im BF-Ausdruck "R1", wenn das Feld oder
Steuerelement "Alter1" heißt?
Weil ich die Formel so von Excel übernommen hatte. Ich wuusste nichts
Besseres.
Post by Karl Donaubauer
Post by Karl Donaubauer
... Warum wird aber nach Eingabe des
Parameterwerts für R2 von 0 werden *alle* Altersangaben z.B. rot
eingefärbt und bei Eingabe von 1, 2, 3,... bleiben alle Altersangaben
schwarz? R2 scheint (zwar falsch, aber immerhin) zu reagieren, oder liege
ich schon wieder falsch?
Mit 5 oder 10... werden sie auch rot, gell? ;-)
Richtig! Das hatte ich aber nicht überprüft. Bist du "Hellseher"? <keine
ernst gemeinte Frage!>
Post by Karl Donaubauer
Der eingegebene Parameterwert wird statt R2 in der Formel verwendet.
Wenn er durch 5 dividiert den Rest 0 ergibt, dann greift die BF.
Das Ergebnis gilt für alle Datensätze, weil du nur eine konstante Zahl
eingibst.
Du bist jetzt schon - wie immer (s. meine Probleme mit Access in der
Vergangenheit) - mein Held! Wirklich. Im Ernst!
(([Alter1];5)=0) mit fetter, roter Schrift und weißem Hintergrund und
(([Alter1];10)=0) *eigentlich* mit fetter, roter Schrift und *gelbem*
Hintergrund. Aber bei der 10er "Abfrage" bleibt der Hintergrund auch weiß.
Und: Bei "Alter2", "Alter3",... wird die Schrift nicht rot und der
Hintergrund bleibt weiß. Dort scheinen meine Formeln nicht zu wirken. Dort
sollten sie aber auch Ihre Anwendung finden. Nur wie?
Lieber Karl, ich hoffe, ich nerve dich nicht zu sehr mit meinen
meiner DBs sehr geholfen. Sie funktionieren ganz toll und problemlos. Was
ich jetzt anstelle, ist eigentlich nur reine Kosmetik, weil ich es in
Excel so gut gefunden hatte. ;-)
Einen blöden Fehler habe ich gefunden: Ich hatte bei den Ausdruck-Formeln
für Alter 2, Alter3,... noch ";" anstatt "Mod" (wie bei Alter1) verwendet.
Jetzt werden schon mal die 5er und 10er Geburtstage _in allen
Altersangaben_ wie gewollt in fettem rot dargestellt, aber _der *gelbe
Hintergrund* für die 10er_ bleibt weiß. Wie bekomme ich den im gewünschten
gelb?

Was ich auch geprüft habe: Die Formeln (([Alter1] Mod 5)=0) und (([Alter1]
Mod 10)=0 funktionieren nur mit "Ausdruck ist" und nicht mit "Feldwert
ist".

Ich habe auch nachgelesen, was "Mod" überhaupt beseutet und bewirkt: Der
Wert des Alters wird rot dargestellt, wenn z.B. [Alter1] geteilt durch 5
(oder 10) den *Rest* "0" ergibt, also das Alter auf "5" (oder "0") endet.
Bei Excel scheint das "R2" in =REST(R2;5)=0 dasselbe zu berwirken.

H E U R E K A! Ich kann den Thread für mich schließen und mich nochmals
bei allen Beteiligten (außer bei mir selber natürlich) bedanken.

Man muss die Reihenfolge der Berechnung ändern: Zuerst die 10er (mit dem
gelben Hintergrund) und dann erst die 5er (mit dem normalen weißen
Hintergrund). Jetzt passt alles. Nochmals vielen Dank, vor allem für eure
Geduld.
--
Gruß

HR Ernst
Loading...