Oktober 29, 2020, 20:52:21

Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!


Ungebundenes Feld füllen in Abhängigkeit vom Inhalt zweier anderer Felder

Begonnen von schubidu, Juli 14, 2020, 07:49:53

⏪ vorheriges - nächstes ⏩

schubidu

Hallo zusammen,

ich habe in einem Bericht ein ungebundenes Feld (DatEnde) eingefügt, das gefüllt werden soll entweder mit
- wenn vorhanden => mit Feld 1 (Format: Datum)
- wenn Feld 1 nicht gefüllt ist, dann mit Feld 2 füllen (Format: Text).


'If Not IsNull(Me!Feld1) Then
          DatEnde = Me!Feld2
       Else
          DatEnde=Me!Feld1
       Endif

Das Ganze habe ich unter dem Detailbereich unter dem Ereignis "Beim Formatieren" eingestellt. Es tut sich aber gar nichts. Es kommt auch keine Fehlermeldung.

Was mache ich falsch???

vielen Dank für Eure Hilfe.

DF6GL

Hallo,

setze einen Haltepunkt in den Code und prüfe, ob die Prozedur überhaupt aufgerufen wird.

Prüfe dann, ob im Detailbereich-Ereignis "Beim Formatieren" [Ereignisprozedur]  steht.

schubidu

Guten Morgen DF6GL,

habe ich gerade versucht und habe den Haltepunkt neben das "Else" gesetzt. Es tut sich gar nichts.

DF6GL

Hallo,

Hast Du den Eintrag "[Ereignisprozedur]"  überprüft?

Öffne den Bericht mal in "Seitenansicht", nicht in "Berichtansicht".

In Berichtsansicht treten nur beschränkt Ereignisse auf.

Ansonsten schreib den Ausdruck in den Steuerelementinhalt des Textfeldes.

schubidu

Zitat von: DF6GL am Juli 14, 2020, 09:59:03Öffne den Bericht mal in "Seitenansicht", nicht in "Berichtansicht".

Hallo,
genau das habe ich gerade ausprobiert: in der Seitenansicht funktioniert es, in der Berichtsansicht NICHT. Ehrlich gesagt, versteh ich den Unterschied nicht so ganz und auch nicht, warum das in der Seitenansicht funktioniert.
Aber ich habe schon mal gefunden, woran es liegt....


MzKlMu

Hallo,
die Berichtsansicht gibt nur eine grobe oftmal unformatierte Ansicht wieder.
Für die richtige Ansicht ist immer die Seitenansicht zu verwenden.
In früheren Versionen von Access gab es diese Berichtsansicht gar nicht.
Gruß
Klaus

DF6GL

Hallo,

früher war, wie Klaus schon sagt, ein "Bericht" in Access nur eine Vorlage für den Papierausdruck.

Das hat sich dahingehend erweitert, das ein Access-Bericht jetzt unter den (geschäftlichen) Begriff "Reporting" fällt, der Daten in übersichtlicher und zusammengefasster Weise anzeigt und sich nicht nach irgendwelchen Papierformaten richtet.

Dadurch sind in dieser Ansicht die Verarbeitungen entfernt/deaktiviert, die sich auf das eigentliche Drucken beziehen, unter anderem eben das Ereignis "Beim Formatieren", das sich ja z. B. an der Papiergröße orientieren muss.

Dafür gibt es Ereignisse oder Steuerelemente, die in der Seitenansicht nicht sinnvoll sind, z. B. Schaltflächen und Klick-Ereignisse.





schubidu

Hallo,

oh, Mann, das muss man natürlich wissen  :) vielen Dank für die ausführliche Beschreibung.

Ein Problem habe ich noch: wie schon erwähnt, habe ich zwei Felder mit zwei verschiedenen Formaten (Datum und Text). Ich habe im Textfeld so etwas stehen wie "04/2019".
Wie muss ich das ungebundene Feld formatieren, damit beide Formate angezeigt werden? Im ungebundenen Feld kann ich nur Datums- und Zahlenformate auswählen.

vielen Dank und Grüße

DF6GL

Hallo,

versteh nicht ganz..

Was heißt "so etwas stehen wie "04/2019".?

In WELCHEM Feld steht dies?

Zudem kommt es nicht auf das Format an, sondern auf den Datentyp der zwei Felder in der Tabelle.


Zeig mal ein Beispiel, wie der Inhalt der beiden Felder in der Tabellen-Ansicht aussieht und zeige deren Datentyp.

Eigentlich ist gar keine Rücksicht auf das Format zu nehmen.


Im Steuerelementinhalt von Feld "DatEnde":
= Wenn(IstNull([Feld1]);[Feld2];[Feld1])
Oder:

=nz([Feld1];[Feld2])

schubidu

Ups. Stimmt. Ich habe wohl einen Fehler gemacht. 

=Wenn([Feld1]>0;[Feld1];[Feld2])

Als ich Deine Version probiert habe, hat es funktioniert.

Recht herzlichen Dank. Jetzt ist alles so wie ich es mir erträumt habe!

Viele Grüße