PDA

Vollständige Version anzeigen : PLZ ohne Null?


Gernot
29.04.2001, 12:27
Schönen Sonntag an das Forum,

da hab ich doch eine Postleitzahlentabelle mit Orten erhalten, aber zu meinem großen Erstaunen fehlt bei einem Grossteil der Orte die vorangestellte 0. Da hat wohl einer die Bezeichnung Postleit(ZAHL) allzu ernst genommen und auch als Zahl konvertiert.

Meine Frage ist nun:
Kann ich die Null mit einer Aktualisierungsabfrage wieder einfügen, oder ist da VBA Code notwendig?

Hat da Jemand eine gute Lösung, ich wäre dankbar dafür und könnte mein Vorhaben weiterführen.


Viele Grüße von Gernot

Ikke
29.04.2001, 13:27
Hallo Gernot,
also ich persönlich würde da immer einen VBA-Code nehmen... Der Code sieht dann umgefähr so aus:
Set aktuelleDB = CurrentDB
Set DAT = aktuelleDB.OpenRecordset("PLZ", dbOpenDynaset)
DAT.MoveFirst
Do While Not DAT.EOF
If Len(DAT!PLZ) < 5 then
DAT.Edit
DAT!PLZ = ("0") & (DAT!PLZ)
DAT.Update
DAT.MoveNext
End If
LOOP
DAT.Close

Natürlich solltest Du das Feld PLZ in der Tabelle als String definieren. Und ich hoffe, daß es keine PLZ mit doppelter Null am Anfang gibt.... ;)

Alexander Jan Peters
29.04.2001, 15:02
<font color="#000000" size="2" face="Tahoma">Hallo,</font><font color="#000000" size="2" face="Tahoma">

es müßte doch eigentlich reichen, wenn Du das Format des Feldes auf 000000 (6 mal die Null) einstellst. Dann werden Sie so angezeigt, wie es sein soll, aber trotzdem nimmt das Ganze nicht soviel Platz weg (Zahl LongInteger: 4 Byte).

Gruß

Alexander Jan Peters

Gernot
30.04.2001, 07:08
Guten Morgen,

und vielen Dank für die Informationen. Die Lösung von Ikke hat mir weitergeholfen, und nach einigen Versuchen hat es dann auch geklappt.

Gruß Gernot

Scorefun
30.04.2001, 10:27
Geht mit 'ner simplen Aktualisierungsabfrage aber auch:

wenn Tabelle tblPLZ heißt und das Feld PLZ:

SQL-Syntax:
UPDATE tblPLZ SET tblPLZ.PLZ = "0" & [PLZ]
WHERE (((Len([PLZ]))=4));