Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Anzahl Datensätze aus mehreren PLZ Bereichen darstellen

Begonnen von Accessoraner, Januar 19, 2018, 20:35:27

⏪ vorheriges - nächstes ⏩

Beaker s.a.

Hallo Domm,
Die Essenz ist, dass Left() mit NULL umgehen kann und Left$() eben
nicht. D.h. wenn es bei der Verwendung eines Strings vorkommen kann
das dieser den Wert NULL hat verwendest du Left(); - Left$() würde einen
Laufzeitfehler erzeugen.
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

MzKlMu

@Domm
wenn man den Text nach translate.google kopiert erhält man brauchbare Übersetzungen.
https://translate.google.com/?hl=de

Die nachfolgende Übersetzung stammt original aus dem Link, ohne die geringste Nachbearbeitung. Nutze ich auch immer wieder.
ZitatDas nachfolgende $ ist ein Typdeklarationszeichen für den Datentyp Zeichenfolge in VBA.
Das von Left $ () zurückgegebene Ergebnis ist eine Zeichenkette, während Left () eine Variante zurückgibt.
Sie müssen Left (), nicht Left $ () verwenden, wenn eine Null-Wahrscheinlichkeit besteht, da die Variant Null sein kann, aber der String nicht. Um das zu demonstrieren:
Drücken Sie Strg + G, um das Sofort-Fenster zu öffnen.
Eingeben: ? Links (Null, 1) Die Antwort ist Null.
Jetzt eingeben:? Left $ (Null, 1) Dies erzeugt Fehler 94. Da das Ergebnis Null sein sollte und der String nicht Null sein kann, erhalten Sie den Fehler "ungültige Verwendung von Null".
Wenn Sie mit String-Werten arbeiten, ist Left $ () in VBA-Code etwas effizienter, da der Overhead / Inefficiency der Variant vermieden wird. Wenn jedoch die Möglichkeit besteht, dass NULL-Werte beteiligt sind, verwenden Sie Left (), oder behandeln Sie den Null-Wert explizit mit Nz ().
left $ () gibt eine Zeichenkette zurück oder erzeugt einen Fehler, wenn NULL übergeben wird
left () gibt einen String oder NULL zurück, wenn NULL übergeben wird
Gruß Klaus

Lachtaube

Im Vergleich dazu DeepL, der IMHO bessere Englisch-Deutsch Übersetungen liefert.
ZitatUnterschied zwischen Left() und Left$() Funktion in Access

Ich versuche, eine fehlerhafte Abfrage zu debuggen. Die Abfrage verwendet Left$([blahblah],4) anstelle von Left([blahblah],4).

Was ist der Unterschied zwischen den Funktionen Left() und Left$() in Microsoft Access?

'-------------------------------------------------------------

Das nachgestellte $ ist ein Typdeklarationszeichen für den Datentyp String in VBA.

Das Ergebnis, das von Left$() zurückgegeben wird, ist ein String, während Left() einen Variant zurückgibt.

Sie müssen Left() verwenden, nicht Left$(), wenn es irgendeine Chance auf Null-Werte gibt, da die Variante Null sein kann, aber der String nicht. Um das zu demonstrieren:

    Drücken Sie Strg+G, um das Immedate-Fenster zu öffnen.

    Eingabe: ? Links(Null,1) Die Antwort ist Null.

    Jetzt geben Sie ein: ? Left$(Null,1) Dies erzeugt den Fehler 94. Da das Ergebnis Null sein sollte und der String nicht Null sein kann, erhalten Sie den Fehler "Ungültige Verwendung von Null".

Wenn Sie es mit String-Werten zu tun haben, wird Left$() im VBA-Code etwas effizienter sein, da es den Overhead und die Ineffizienz, die mit der Variante verbunden sind, vermeidet. Wenn jedoch die Möglichkeit besteht, dass Nulls beteiligt sein könnten, verwenden Sie Left(), oder behandeln Sie die Null explizit mit etwas wie Nz().

    left$() gibt einen String zurück oder generiert einen Fehler, wenn NULL übergeben wird.

    left() gibt einen String oder NULL zurück, wenn NULL übergeben wird.

Mehr Informationen zu Nulls: http://allenbrowne.com/casu-11.html

Übersetzt mit www.DeepL.com/Translator
Grüße von der (⌒▽⌒)