Neuigkeiten:

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

Mobiles Hauptmenü

Telefonnummer Korrektur und Prüfung nach Vorwahl

Begonnen von saarmike, Juli 24, 2014, 11:16:24

⏪ vorheriges - nächstes ⏩

saarmike

Hallo zusammen,
bräuchte mal wieder eure Hilfe !!!

Ich bekomme täglich neue Kundendaten wo die Telefonnummer nach folgenden
Kriterien korrigiert werden sollen und gleichzeitig eine Plausibilitätsprüfung anhand
der Vorwahl durchgeführt werden soll:

Tabellen: relKundendaten und relParamsVorwahl

Die Telefonnummer soll zuerst von allen Buchstaben und Sonderzeichen befreit werden
und danach wenn keine 0 vorgestellt ist dies auch korrigieren.
Im 2 Stepp soll die korrigierte Telefonnummer anhand einer Vorwahltabelle auf Plausibilität
geprüft werden und die Vorwahl in Klammern gesetzt werden.

Telefon vor Prüfung: 0681752223         Telefon nach Prüfung: (0681)752223

Würde dies alles gerne in einem Wisch machen, weiß jemand wie ????????

DF6GL

#1
Hallo,

schreib eine Funktion , die den Ausgangsstring Zeichen für Zeichen durchläuft und dabei das aktuelle Zeichen auf "numerisch" prüft und bei Zutreffen an einen Ziel-String anfügt. Teste sodann, ob es eine passende Vorwahl gibt und füge die Klammern ein.
.
.
.
For i =1 to Len(strTelNrAlt)
z = Mid(strTelNrAlt,i,1)
if Isnumeric(z) Then strTelNrNeu = strTelNrNeu & z
Next
.
.
.
strVorwahl = Dlookup("VorwahlNr","relParamsVorwahl", "'" & strTelNrNeu & "' Like VorwahlNr & '*'")
.
.
strTelNrNeu = "(" & strVorwahl & ")" & Mid(strTelNrNeu,Len(strVorwahl)+1)
.
.
.

saarmike

Super.....vielen Dank das funktioniert perfekt  :) :) :)
Wie kann ich jetzt noch prüfen ob eine 0 vorgestellt ist und die dann
davorstellen bevor ich die Vorwahl abgleiche???

DF6GL

Hallo,

versteh ich nicht...

gibt es denn Nummern ohne führende 0 ?

Mach mal ein Beispiel dazu...

saarmike

Hallo,
sicher doch, kann ja z.B. die Nummer so geliefert bekommen 681752223 anstatt 0681752223
und dann findet die Vorwahlsuche natürlich keine passende Vorwahl!!

Könntest du mir auch noch einen Tip geben wenn der Vorwahlabgleich fehl schlägt, dann bräuchte
ich einen Rückgabewert damit ich das Hinweisfeld in der Kundendatenbank mit dem Hinweis "fehlerhafte Vorwahl"
füllen kann?

saarmike

Ich glaube das erste Problem habe ich so gelöst:

If VBA.Left(strTelnrNeu, 1) <> 0 Then strTelnrNeu = "0" & strTelnrNeu

Somit hätte ich nur noch das Problem mit dem Rückgabewert!!

DF6GL

Hallo,

Zitatkann ja z.B. die Nummer so geliefert bekommen 681752223 anstatt 0681752223
naja, das wäre aber schlichtweg eine falsche Nummer, derweil sie als reine Anschlussnummer zu interpretieren ist..


Prüf halt in der Schleife das erste numerische Zeichen, ob es eine 0 ist und reagiere entspr.

Zitatwenn der Vorwahlabgleich fehl schlägt

dann liefert Dlookup keinen Wert (d.h. NULL)  und kann mit If IsNull (dlookup....) geprüft werden.