Telefonnummern formatieren

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Telefonnummern formatieren

Beitrag von komma4 »

Da wirst Du um eine Programmierung mit Logik nicht rumkommen - Deine Wünsche sind mehr als "Formatieren"....
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Eia
********
Beiträge: 2614
Registriert: Sa, 23.12.2006 07:40

Re: Telefonnummern formatieren

Beitrag von Eia »

Wenn Du nur exakt diese Muster hast, geht das hier:
tel.ods
(7.46 KiB) 488-mal heruntergeladen
Aber das wird nicht der Fall sein, oder?
mfG
Nikolas
Beiträge: 2
Registriert: Mi, 20.02.2008 13:11

Re: Telefonnummern formatieren

Beitrag von Nikolas »

Vielen Dank für Eure raschen und kreativen Vorschläge
Nur ist es (natürlich) so, dass die Telefonnummern nicht alle das gleiche Muster vorweisen. Die Vorwahlen sind natürlich nicht alle von Wien (01); sondern von diversen Ortschaften.
Auch kann ich die Tabelle nicht nach "hat durchwahl, hat keine " sortieren; daher helfen mir die zwei muster nur bedingt.
Gibt es eventuell eine Lösung, welche auf alles passt?

Code: Alles auswählen

 
hier mal ein Auszug
06582/73310-0
02747/67682
03452/82292
02782/83586
05337/62554
07412/52295
01/8773117-0
02554/8248
06277/7760
05212/3144
04852/69820-0
02252/84352
01/4855772
02574/2335-0
03862/57657-0
01/6022656
05242/65532-0
Eia
********
Beiträge: 2614
Registriert: Sa, 23.12.2006 07:40

Re: Telefonnummern formatieren

Beitrag von Eia »

Anhand der zwei Muster müsste Dir das Prinzip klar sein:
man muss anhand irgendwelcher Merkmale (Position des /, Länge, Art der Vorwahl...) identifizieren, was mit der Nummer geschehen soll und sie dann entsprechend auseinandernehmen.
Es geht nicht anders, als alle möglichen Fälle zu identifizieren und entsprechend abzuhandeln.
Das was Du tust, wenn Du eine Formel anschaust und dann entscheidest, wie Du die aufbereiten willst, das musst Du als Formel formulieren können.
Ob man das mit Calc-Formeln macht oder besser ein Makro programmiert, kann ich Dir nicht sagen.
Aber so oder so:
Die Fallmerkmale und was dann jeweils geschehen soll, musst Du definieren. Es gibt keine Funktion "beliebige Telefonnummern identifizieren und formatieren".
mfG
Niels
*****
Beiträge: 212
Registriert: Mi, 16.06.2004 06:46
Wohnort: Heikendorf

Re: Telefonnummern formatieren

Beitrag von Niels »

Hey, super Lösungsansätze,

Ich kenne eine korrekte kanonische Formatierung zwar unter +43(1)3456-789, aber auch das bekommt man ja damit hin. Wenn wirklich bei allen Rufnummern das Format so passt, dass der Slash die Vorwahl von der Rufnummer trennt, dann ist das ok. Ansonsten brauchst Du eine Vorwahlentabelle um die Abtrennung der Vorwahl sauber zu bekommen. Ich will hier mal einfach skizzieren, wie ohne Abtrennung der Vorwahl ein Format +4313456789 erreicht werden kann, auch wenn internationale Nummer dabei sind. Im Beispiel gehen wir mal davon aus, dass der Standort Wien ist.
  1. Alle Leerzeichen weg
    Prüfen, ob die ersten beiden Stellen = "00", dann "00" weg und dafür + davor
    Prüfen, ob die erste Stelle ="0", dann "0" weg und +43 davor
    wenn alles nicht passt, dann ist es eine Ortsnetznummer -> +431 davor
Gruß
Niels
Wer lesen kann ist klar im Vorteil.
Nikolas
Beiträge: 2
Registriert: Mi, 20.02.2008 13:11

Re: Telefonnummern formatieren

Beitrag von Nikolas »

Hallo Paljass,

sorry für die späte antwort, aber ich hatte bis dato keine Zeit ins Forum zu gucken.
Leider ist es so, dass wie in meinem ersten Post geschrieben, die "0" vor der Vorwahl auch entfernt werden muss.
Wenn ich dies jedoch vernachlässige und zb. die erste Zeile deiner Lösung xmal kopiere und in die 1. Spalte alle meine Rufnummern eingebe, erscheint nur Kraut und Rüben.
Hast du die von mir überlieferten Daten manuell entweder in deine 1. oder 2. Zeile eingegeben oder nur deine 1. Zeile xmal kopiert und in Spalte 1 alle meine Nummern eingegeben?

Bin mit Deinem super Lösungsansatz schon so kurz vorm Ziel, aber es will noch nicht so richtig klappen :-)

vielen Dank für Deine Hilfe.

Hier nochmal ein Auszug als Beispiel:

Code: Alles auswählen

02236/22732-0
01/2717552
07253/20090
01/4199644
02247/70161
01/7746828
01/5247400
07242/753-0
0316/225207-0
02626/630230
05512/3769
02272/68905
07582/63456
03136/55563
06542/53020-0
01/5874946
01/9112636
07732/3594
06452/5408-0
05244/62327
02168/67738
06274/6588
05212/3949
05522/71713-0
0662/640410-0
07229/72185-0
04276/2094-0
05232/21020
07289/8977
07286/8212-0
07242/47346
03113/2282-0
Karolus
********
Beiträge: 7535
Registriert: Mo, 02.01.2006 19:48

Re: Telefonnummern formatieren

Beitrag von Karolus »

Hallo
Ich habs mal als Formel für eine Zelle geschrieben:

Code: Alles auswählen

=LINKS(WECHSELN(A1;0;"+43 ";1);FINDEN("/";WECHSELN(A1;0;"+43 ";1))-1)&" "&TEXT(WECHSELN(RECHTS(A1;LÄNGE(A1)-FINDEN("/";A1));"-";"");WENN(LÄNGE(WECHSELN(RECHTS(A1;LÄNGE(A1)-FINDEN("/";A1));"-";""))<6;"### ##";"### ## ##"))
oder etwas kürzer:

Code: Alles auswählen

="+43 "&TEIL(A1;2;FINDEN("/";A1)-2)&" "&TEXT(WECHSELN(TEIL(A1;FINDEN("/";A1)+1;99);"-";"");WENN(LÄNGE(WECHSELN(TEIL(A1;FINDEN("/";A1)+1;99);"-";""))<6;"### ##";"### ## ##"))
Gruß Karo
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Karolus
********
Beiträge: 7535
Registriert: Mo, 02.01.2006 19:48

Re: Telefonnummern formatieren

Beitrag von Karolus »

Hallo Palljass

Ok, Ich hab die Formel jetzt auf eine beliebige Anzahl von Nachwahlziffern ausgebaut.

Code: Alles auswählen

="+43 "&TEIL(A1;2;FINDEN("/";A1)-2)&" "&TEXT(WECHSELN(TEIL(A1;FINDEN("/";A1)+1;99);"-";"");WENN(ISTUNGERADE(LÄNGE(WECHSELN(TEIL(A1;FINDEN("/";A1)+1;99);"-";"")));" #";"")&WIEDERHOLEN("## ";GANZZAHL(LÄNGE(WECHSELN(TEIL(A1;FINDEN("/";A1)+1;99);"-";""))/2)))
Deine Endformel in Spalte K hinterlässt doppelte Leerzeichen, schachtele die evtl. in:

Code: Alles auswählen

=wechseln(......;"  ";" ")
Gruß Karo
Zuletzt geändert von Karolus am Fr, 14.03.2008 21:05, insgesamt 3-mal geändert.
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Antworten