Office: Funktion Länge in Abfrage

Helfe beim Thema Funktion Länge in Abfrage in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo Leute, ich möchte gerne in einer Abfrage die Funktion Länge dazu nutzen um einen String mit Zeichen zu Füllen. Meine Abfrage sieht... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von mzd2003, 21. Januar 2003.

  1. Funktion Länge in Abfrage


    Hallo Leute,

    ich möchte gerne in einer Abfrage die Funktion Länge dazu nutzen um einen String mit Zeichen zu Füllen.

    Meine Abfrage sieht folgendermaßen aus:

    IIf(Len([materialnummer])="5","000" & [Materialnummer]))

    Leider funktioniert dieses nicht in der Abfrage.

    Ist an der Abfrage was falsch ?

    Gruß
    Mauritius

    :)
     
    mzd2003, 21. Januar 2003
    #1
  2. An der Abfrage nicht, aber an der Befehlssequenz. Das Ergebnis von Len() bzw. Länge() ist eine Zahl und kein Text. Lass die Hochkommatas weg und schreibe

    =5;......

    Arno
     
  3. Hallo Arno,

    das habe ich auch schon probiert, das sah dann folgendermaßen aus:

    IIf(Len([Materialnummer])=5,"000" & [Materialnummer])))

    Auch auf diese Weise habe ich kein Ergebnis bekommen.

    Gruß
    Mauritius
     
    mzd2003, 23. Januar 2003
    #3
  4. Funktion Länge in Abfrage

    Hi Mauritius,

    dein SQL$ könnte dann evtl. so ähnlich aussehen wie

    Code:
     
  5. Hi Rudolf,

    das sieht vom Ansatz her gut aus. Aber dat verdammte Ding will nicht.

    IIf(Len([Materialnummer])=5,Str(Len([materialnummer]) & "000" & [Materialnummer])))

    So geht es also auch nicht. Das muß doch irgendwie machbar sein.

    Gruß
    Mauritius
     
    mzd2003, 23. Januar 2003
    #5
  6. Poste mal die ganze SQL (bitte lesbar, das heißt ggf. zeilenumbrüche etc. einfügen), dann kann man auch sehen wozu und in welchem zusammenhang du das einbaust.
     
  7. Hi Arno,

    anbei der Code:

    SELECT OffeneAufträge.Auftraggeber, OffeneAufträge.Auftragsnummer, OffeneAufträge.Auftragsposition, OffeneAufträge.Warenempfänger, OffeneAufträge.Fälligkeitsdatum, OffeneAufträge.Materialnummer, OffeneAufträge.OffeneMenge, OffeneAufträge.Einheit, OffeneAufträge.KummMenge
    FROM OffeneAufträge
    WHERE (((OffeneAufträge.Materialnummer)=IIf(Len([Materialnummer])=5,Str(Len([materialnummer]) & "000" & [Materialnummer]))));

    Zweck der ganzen Geschichte ist, dass das Feld Materialnummer bei z. B. 5 Stellen mit 3 Nullen vorne aufgefüllt wird. Also vorher 12345 und nachher 00012345.

    Gruß
    Mauritius
     
    mzd2003, 23. Januar 2003
    #7
  8. Funktion Länge in Abfrage

    Hi Mauritius,

    probier doch mal

    WHERE (((OffeneAufträge.Materialnummer)=Str(Len([materialnummer]) & "000" & [Materialnummer]));

    [bitte Anzahl der Klammern checken *wink.gif* ]

    Ansonsten sieht es für mich so aus, als wenn du am Besten "zwei Durchläufe" machst, d.h. in einer Abfrage NUR den len- Part feststellen und in der zweiten dein UPDATE [darauf wird's dann wohl hinauslaufen, gelle *wink.gif* ], ohne IIF ...
     
  9. Hallo,
    wenn du mit der Abfrage bezwecken willst, das die Materialnummern die 5 Stellig mit drei nullen auffüllen möchtest, sollte der Code so aussehen:

    SELECT OffeneAufträge.Auftraggeber, OffeneAufträge.Auftragsnummer, OffeneAufträge.Auftragsposition, OffeneAufträge.Warenempfänger, OffeneAufträge.Fälligkeitsdatum, IIf(Len([Materialnummer])=5,"000" & [Materialnummer],[Materialnummer]) AS Material_nummer, OffeneAufträge.offeneMenge, OffeneAufträge.Einheit, OffeneAufträge.KummMenge
    FROM OffeneAufträge;
     
  10. Hi Jens,

    das geht !!! SUPER und VIELEN DANK !!

    Gruß
    Mauritius
     
    mzd2003, 24. Januar 2003
    #10
  11. Ansonsten währe die IMHO bessere Alternative gewesen die Materialnummer weiterhin als Zahlenfeld zu führen und in der Format-Eigenschaft des Tabellenentwurfs die entsprechende Anzahl Nullen einzugeben. Dann wird

    12345

    auch als

    00012345

    angezeigt, ohne das man die Feldtypen "vergewaltigen" müßte!

    Gruß

    Arno
     
  12. Ja Arno, du hast Recht in diesem Fall hatte ich einfach keine andere Wahl.

    Aber ansonsten bin ich auf jeden Fall kein Feldtypen-Vergewaltiger ganz ehrlich !!

    Gruß
    Mauritius
     
    mzd2003, 24. Januar 2003
    #12
  13. Funktion Länge in Abfrage

    Ja Arno, du hast Recht in diesem Fall hatte ich einfach keine andere Wahl.

    Aber ansonsten bin ich auf jeden Fall kein Feldtypen-Vergewaltiger ganz ehrlich !!

    Gruß
    Mauritius
     
    mzd2003, 24. Januar 2003
    #13
  14. Hallo Mauritius,,
    für diese Umsetzungen solltest du dir auch den Befehl String$ ansehen.

    z.B.

    Function Materialnummer(vInhalt As Variant) As String

    Const Laenge_vInhalt = 3
    If IsNull(vInhalt) Or vInhalt = 0 Then
    Materialnummer = String$(Laenge_vInhalt, "0")
    Else
    If Len(vInhalt) < Laenge_vInhalt Then
    Materialnummer = String$(Laenge_vInhalt - Len(vInhalt), "0") & vInhalt
    Else
    Materialnummer = vInhalt
    End If
    End If
    End Function

    Gruss

    Jo
     
Thema:

Funktion Länge in Abfrage

Die Seite wird geladen...
  1. Funktion Länge in Abfrage - Similar Threads - Funktion Länge Abfrage

  2. WENN-Funktion mit mehreren Bedingungen

    in Microsoft Excel Hilfe
    WENN-Funktion mit mehreren Bedingungen: Guten Morgen, ich würde gerne eine Funktion erstellen, die die Werte einer Zelle untersucht. Ist der Wert unter 5, so soll ein "nein" erscheinen und das Feld rot werden Ist der Wert zwischen 5...
  3. Zellbezug mit MONAT(HEUTE()) Funktion

    in Microsoft Excel Hilfe
    Zellbezug mit MONAT(HEUTE()) Funktion: Hallo Forum, ich habe eine Exceltabelle, mit der ich meine Finanzen festhalte. Auf einer Übersichtsseite stehen die Einnahmen/Ausgaben für verschiedene Bereiche. In der Spalte Q möchte ich den...
  4. Daten aus anderer Mappe

    in Microsoft Excel Hilfe
    Daten aus anderer Mappe: Hallo zusammen, ich habe für die bessere Verständlichkeit eine Excel erstellt, die mein Problem beschreibt. In Tabelle 2 sind verschiede Formen dargestellt, denen mehrere Eigenschaften zugeordnet...
  5. Funktionen Filter, Spaltenwahl und Übernehmen

    in Microsoft Excel Hilfe
    Funktionen Filter, Spaltenwahl und Übernehmen: Guten Abend Liebe Forenmitglieder, es ist für Euch wahrscheinlich ein leichtes, aber ich komm gerade nicht dahinter. Und auch verschiedene Videos führten in meinen Augen nicht weit genug. Wie...
  6. Filter()-Funktion: gefilterte Tabelle erweitern

    in Microsoft Excel Hilfe
    Filter()-Funktion: gefilterte Tabelle erweitern: Hallo, ich möchte gern die Filter-Funktion nutzen (was auch klappt), aber die erzeugte Tabelle möchte ich um neue Spalten erweitern. Leider scheint das aber so nicht zu funktionieren? Beispiel:...
  7. LÄNGE, LÄNGEB (Funktionen)

    in Microsoft Excel Tutorials
    LÄNGE, LÄNGEB (Funktionen): LÄNGE, LÄNGEB (Funktionen) Excel für Microsoft 365 Excel für Microsoft 365 für Mac Excel für das Web Excel 2019 Excel 2016 Excel 2019 für Mac...
  8. Mehrere WENN Funtionen in einer Formel ist definitiv zu lang

    in Microsoft Excel Hilfe
    Mehrere WENN Funtionen in einer Formel ist definitiv zu lang: Hallo, habe mir ein Jahreskalender gebastelt. [ATTACH] Wie auf dem Bild zu sehen ist, steht der ganze Monat in einer Zeile. Unter den Wochentagen muss der Nutzer bestimmte Buchstaben eintragen....
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden