Fehler bei Ausdruck mit Zahlen

Hallo,

ich verwende Access 2002.
Wenn ich z.B. in einer Abfrage folgenden Ausdruck verwende klappt es:
[Hausnummer] & ", " & [PLZ] & ", " & [Ort]

Wenn ich jedoch (was für mich sehr praktisch wäre)
das & durch ein + ersetze bekomme ich nur den Wert
#Fehler zurück
[Hausnummer] & ", " + [PLZ] & ", " & [Ort]

Gleiches Problem habe ich zum Teil auch wenn ich versuche Werte im Datumsformat zu „Kombinieren“.
="geboren am: " & [Geburtsdatum]
funktioniert nur, wenn ‚Geburtsdatum‘ als Datum-kurz definiert ist.

Woran liegt das?

Danke

Hallo,

ich verwende Access 2002.
Wenn ich z.B. in einer Abfrage folgenden Ausdruck verwende
klappt es:
[Hausnummer] & ", " & [PLZ] & ", " & [Ort]

Wenn ich jedoch (was für mich sehr praktisch wäre)
das & durch ein + ersetze bekomme ich nur den Wert
#Fehler zurück
[Hausnummer] & ", " + [PLZ] & ", " & [Ort]

warum wäre das „praktisch“ ? Es wäre schlichtweg falsch, denn Du willst ja String zusammenfügen und keine mathematischen Berechnungen machen…

Gleiches Problem habe ich zum Teil auch wenn ich versuche
Werte im Datumsformat zu „Kombinieren“.
="geboren am: " & [Geburtsdatum]
funktioniert nur, wenn ‚Geburtsdatum‘ als Datum-kurz definiert
ist.

WIE funktionioniert es denn?

„Datum-kurz“ ist kein Datentyp, sondern ein Format, auf das es nicht ankommt.

Wenn [Geburtsdatum] in der Tabelle vom Datentyp Datum/Uhrzeit und sonst keine Formatierung angegeben ist, wird das Datum so angezeigt/geliefert, wie es in den Windows-Regionseinstellungen angegeben ist.

Viele Grüße vom Bodensee
Franz , DF6GL

PS: Feedback erwünscht!

Hi,

Woran liegt das?

weil es die Entwickler von Access so vorgesehen haben:

&
verkettet String und Variant Typen. Alles was nicht diesem Typ entspricht wird in ein Variant String umgewandelt.

ist in erster Linie zum addieren von Zahlen da. Leider verkettet es auch wenn die Wertetypen unterschiedlich sind in sehr unterschiedlicher Weise.

Schau dir die Details unter dem Schlagwort „Operatoren“ in der Hilfe an.

Gruss
Joey

Hallo,

ich habe mir schon gedacht, dass das Plus hier mathematisch
Verwendet wird.
Wenn ich das Plus verwende und kein PLZ- Eintrag vorhanden ist, hätte ich das störende Komma nicht mehr. Bei Ausdrücken mit Text funktioniert das wunderbar.
Gibts da eine Möglichkeit die PLZ als String ‚zu verwenden‘?

"=„geboren am: " & [Geburtsdatum]“ habe ich in einem Bericht
verwendet um nicht 2 Textfelder zu benötigen.
geboren am : 12.12.1990

Ich finde es auch komisch aber bei mir wurde immer ein Fehler angezeigt, bis ich das Format auf datum- kurz geändert habe…

Gruß
Tobias

HAllo,

Die PLZ sollte (muss) in der Tabelle(!) vom Datentyp „Text“ sein, keine „Zahl“.

Wenn das Komma nicht vorhanden sein soll bei leerem PLZ-Feld, mußt das z. B. mit IIF (Wenn) und IsNull([PLZ] im Ausdruck geprüft werden.

Zum Datum: Welchen DATENTYP hat denn nun das Feld in der Tabelle?

Explizit:

="Geboren am: " & Format([Geburtsdatum];„tt.mm.jjjj“)

(evtl: ="Geboren am: " & Format([Geburtsdatum];„dd.mm.yyyy“)

Viele Grüße vom Bodensee
Franz , DF6GL

PS: Feedback erwünscht!

Hallo,

danke für die schnellen Antworten.
Ich hätte auch selber drauf kommen können, die PLZ als Text zu speichern :wink:

Das Datum ist als Datum/ Uhrzeit gespeichert.
Das funktioniert jetzt auch!

Dank und Gruß
Tobias