Lung Geschrieben 26. Juni 2002 Geschrieben 26. Juni 2002 Moin! Hab ein kleineres Prob: Ich hab ne DB gelifert bekommen mit knapp 280.000 Datensätzen. Jetzt habe ich aber die 3 Felder die ich als Text benötigen würde als Zahl bekommen. Wie ich von Zahl nach Text umwandeln kann ist mir klar, aber, wie kriege ich es hin, daß z. B. aus der Zahl 47 der Text 047 wird? bzw, daß die Felder nach vorne hin mit 0 ergänzt werden? Greetz Lung
robotto7831a Geschrieben 26. Juni 2002 Geschrieben 26. Juni 2002 Hallo, Du musst ein VBA Modul schreiben, das in der Tabelle in der entsprechenden Spalte bei jedem Datensatz eine 0 vorne dran hängt und dann den Datensatz wieder speichert. Frank
Meenzer Geschrieben 26. Juni 2002 Geschrieben 26. Juni 2002 Hi! Was für eine DB hast Du denn??? Access, Oracle, SQL.....?? Gruss
Lung Geschrieben 26. Juni 2002 Autor Geschrieben 26. Juni 2002 Original geschrieben von Mercutio Hi! Was für eine DB hast Du denn??? Access, Oracle, SQL.....?? Gruss Access 97
Meenzer Geschrieben 26. Juni 2002 Geschrieben 26. Juni 2002 Hi! Du kannst Dir zB. eine Abfrage machen und Dein neues Feld ,in dem die Zahl als Text stehen soll, so formatieren: TEXTFELD: "0" & [ZAHLFELD] Mit dem Ergebis kannst Du dann Deine Spalte aktualisieren. Gruss
Olli_Master Geschrieben 27. Juni 2002 Geschrieben 27. Juni 2002 >TEXTFELD: "0" & [ZAHLFELD] Wenn du das so verwendest, dann wird immer eine 0 vorn angehangen. Wenn es aber auch dreistellige Zahlen gibt, dann würde es ein vierstelliger Text werden (123 --> 0123). Das ist aber nicht in deinem Sinn, oder? In diesem Fall hilft die Funktion Right(str,cnt) weiter. TEXTFELD: Right("0" & [ZAHLFELD];3)
Meenzer Geschrieben 27. Juni 2002 Geschrieben 27. Juni 2002 Original geschrieben von Olli_Master Wenn du das so verwendest, dann wird immer eine 0 vorn angehangen. Wenn es aber auch dreistellige Zahlen gibt, dann würde es ein vierstelliger Text werden (123 --> 0123). Das ist aber nicht in deinem Sinn, oder? Oh, das hatte ich überlesen. Aber mit der Right-Funktion kann man das Ergebnis ja dann auf 3 Stellen formatieren. Danke! Gruss
fireworker Geschrieben 27. Juni 2002 Geschrieben 27. Juni 2002 Warum frägst Du nicht die Länge der Zeichen ab? Und wenn die Länge kleiner 3 ist, dann soll eine 0 voran.
Olli_Master Geschrieben 27. Juni 2002 Geschrieben 27. Juni 2002 @fireworker >Warum frägst Du nicht die Länge der Zeichen ab? >Und wenn die Länge kleiner 3 ist, dann soll eine 0 voran. Weil es 280.000 DS sind und da etliche Operationen mehr notwendig sind, damit es ein Textfeld wird und da es so einfachher zu erweitern ist (je nach Art der Daten) wenn(len(str(zahlenfeld))<3; "0" & zahlenfeld; str(zahlenfeld) ) Meinst du das geht schneller? Und außerdem könnte ja auch eine einstellige Zahl dabei sein. Dann wird dein System ein wenig komplizierter. Die andere Lösung kann jedoch einfach auf Right("00" & zahlenfeld; 3) erweitern.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden