PDA

Vollständige Version anzeigen : 0 531 600 600 --> 0531600600


AndyReichert
13.07.2004, 13:28
Hallo,

hab hier eine alte Tabelle in der die Sachnummer mit Leerzeichen eingegeben wurde. Gibt es jetzt ne Möglichkeit die Leerzeichen da rauszubekommen?

Aus 0 531 600 600 sollte z. B. 0531600600 werden.

Das wär ne tolle Sache... Danke für eure Vorschläge.

Gruss
Andy

Arne Dieckmann
13.07.2004, 13:30
Ab Access 2000 könntest du Replace() verwenden. Bis A97 musst du den Replace-Ersatz von DBWiki einsetzen: http://www.dbwiki.de/wiki.php?title=VBA_Tipp:_Access_2000_String-Funktionen_in_Access_97_nutzen

AndyReichert
13.07.2004, 14:44
hallo arne,

zunächst danke für deine turboschnelle antwort. Versionsangabe hab ich vergessen, ist Access 2003

hab es aber net hinbekommen. War etwas unter Zeitdruck und habe das Format (ich schäme mich fast es zu sagen) in Excel geändert und wieder nach Access importiert. Trotzdem würd ich es gerne für die Zukunft wissen wie das ganze in Access funktioniert.

kann cih diesen replace() befehl in einer aktualisierungsabfrage ausführen? hab mir hierzu die offline-hilfe von acces angeschaut, da versteh ich aber nur bahnhof... "untergeordnete Zeichenfolge"???
Könntest du mir den Befehl vielleciht mit einem Beispiel erklären, mit grauer Theorie tu ich mir schwer... ich hab einfach mal eine DB mit Beispieldaten angehängt

gruss
andy

Arne Dieckmann
13.07.2004, 14:58
Replace() zickt in meiner Access-Version innerhalb von Abfragen immer rum ("Undefinierte Funktion 'Replace' in Ausdruck" ). Deshalb musste ich eine VBA-Funktion anlegen, die mit den Argumenten für Replace() gefüttert wird und wiederum Replace() aufruft:

UPDATE tab_TTNR SET tab_TTNR.TTNR = fctRepl([TTNR]," ","");

Die Funktion fctRepl() wird in einem Standardmodul unter Module abgelegt (das Modul anders als die Funktion benennen) und sieht so aus:

Public Function fctRepl(StrOr, strSuch, strErsatz)
fctRepl = Replace(StrOr, " ", "")
End Function


Vielleicht klappt es unter Access 2003 aber ohne diesen Workaround:

UPDATE tab_TTNR SET tab_TTNR.TTNR = Replace([TTNR]," ","");

AndyReichert
13.07.2004, 15:29
@arne,

danke, werd mir die lösung mal in aller ruhe zu gemüte führen.

die abfrage funktioniert so bei mir leider auch nicht.

nochmal danke und schonmal einen schönen feierabend

gruss
andy