Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: KonradR am April 21, 2024, 08:42:21

Titel: Länge der einzelnen Ausdrücke in einem berechneten Feld fest definieren
Beitrag von: KonradR am April 21, 2024, 08:42:21
Hallo liebe Accessfreunde,

ich habe ein Formular mit einem Kombinationsfeld. Für die Anzeige im Kombinationsfeld habe ich in der Datensatzquelle für das Kombinationsfeld ein berechnetes Feld mit drei Ausdrücken definiert. Es handelt sich bei den drei Ausdrücken um drei Texte bzw. drei Wörter aus drei Feldern einer Abfrage.

Jetzt möchte ich ereichen, dass alle drei Ausdrücke in dem berechneten Feld den gleichen Platz bekommen, egal wie lang sie sind. Denn dann sind sie nämlich leichter lesbar. Gibt es da eine Möglichkeit, das einzurichten?
Das aktuelle Ergebnis finde ich nicht so zufriedenstellend:
Screenshot 2024-04-21 064535.png
Titel: Re: Länge der einzelnen Ausdrücke in einem berechneten Feld fest definieren
Beitrag von: MzKlMu am April 21, 2024, 09:57:34
Hallo,
das geht nur mit einer nicht proportionalen Schriftart. Zum ausrichten musst Du dann per VBA die Zeichen des Wortes zählen und dann mit entsprechenden Leerzeichen auffüllen. Ist eine ziemliche Fummelei.
Titel: Re: Länge der einzelnen Ausdrücke in einem berechneten Feld fest definieren
Beitrag von: Beaker s.a. am April 21, 2024, 10:30:34
Schau, ob du mit diesem (https://www.donkarl.com?FAQ4.16) was anfangen kannst.
Für die Lesbarkeit der Abfrage würde ich das in eine Function auslagern, die die drei Felder
erhält und den zusammengesetzten String zurück gibt.
Titel: Re: Länge der einzelnen Ausdrücke in einem berechneten Feld fest definieren
Beitrag von: KonradR am April 21, 2024, 10:57:44
Zitat von: MzKlMu am April 21, 2024, 09:57:34das geht nur mit einer nicht proportionalen Schriftart. Zum ausrichten musst Du dann per VBA die Zeichen des Wortes zählen und dann mit entsprechenden Leerzeichen auffüllen. Ist eine ziemliche Fummelei.
Das probiere ich aus. Vielen Dank.
Titel: Re: Länge der einzelnen Ausdrücke in einem berechneten Feld fest definieren
Beitrag von: KonradR am April 21, 2024, 11:12:16
Zitat von: Beaker s.a. am April 21, 2024, 10:30:34Schau, ob du mit diesem was anfangen kannst.
Funktioniert. Vielen Dank.

Zitat von: Beaker s.a. am April 21, 2024, 10:30:34Für die Lesbarkeit der Abfrage würde ich das in eine Function auslagern, die die drei Felder
erhält und den zusammengesetzten String zurück gibt.
Was genau meinst du mit "Lesbarkeit der Abfrage". Ich kann gerade den Mehrwert nicht erkennen, wenn ich das in eine Function auslagere umd das dann in einem String zurückgegeben zu bekommen. Kannst du das bitte noch mal näher beschreiben, was diese VBA Prozedur genau bewirkt?
Titel: Re: Länge der einzelnen Ausdrücke in einem berechneten Feld fest definieren
Beitrag von: Beaker s.a. am April 21, 2024, 13:38:47
In der Abfrage musst du ja jedes der drei Felder wie gezeigt formatieren.
Und das ist schon ein ziemlich langer Ausdruck, und da liest es sich
einfach besser
..., EineFunction(Feld1, Feld2, Feld3) AS Result ...als dreimal den langen Formatierungsausdruck. Ist m.E. auch leichter zu
erstellen, da du mit der Function (Public) dann auch unabhängig von der
Abfrage das Ergebnis testen kannst.