Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Telefonnummer

Telefonnummer
18.10.2006 09:05:04
Chlebnitschek
Hallo Excelexperten
Ich doktore schon ein paar Stunden am folgenden Problem.:
In einer Kundenliste werden Telefonnummern eingetragen.
Z.Beisp. 03581 62334
035825 5811
015126789456
Wie kann man die Formatierung gestalten so das das Leerzeichen bei unterschiedlichen Vorwahlen richtig erkannt wird? Und kann die Funknummer auch erkannt werden also ohne Leerzeichen.?
Vielen Dank imVoraus.
MfG Jürgen
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Telefonnummer
18.10.2006 11:03:58
EtoPHG
Hallo Jürgen,
Also das beste was mir eingefallen ist:
Nach ITU-T Recommendation 123 (siehe: http://en.wikipedia.org/wiki/E.123)
Wenn in A1 irgendeine Telefonnummer mit ev. Leerzeichen steht:

=WENN(WECHSELN(A10;" ";"")*1>9999999999;TEXT(WECHSELN(A10;" ";"")*1;"+00 000 000 0000");TEXT(WECHSELN(A10;" ";"")*1;"(000) 000 0000"))

Ich bin aber sicher, dass das noch nicht das Ei des Kolumbus ist...
Gruss Hansueli
Anzeige
AW: Telefonnummer
18.10.2006 11:11:56
Jürgen
Hallo Hansueli
Erst mal Dank für die Mühe.
In welche zelle muß die Formel kopiert werden?
Vieleicht gibt es noch eine VBA lösung?
Gruß Jürgen
AW: Telefonnummer
18.10.2006 11:15:07
EtoPHG
Hallo Jürgen,
Sorry meine Beispielformel ist für A10 statt A1, also müsste der Wert in A10 stehen und die Formel könnte überall (ausser A10) z.B. B10 stehen.
Gruss Hansueli
Anzeige
AW: Telefonnummer
18.10.2006 11:10:28
fcs
Hallo Jürgen,
da es sich bei der Eingabe der Telefonnummern um Text handelt, geht mit Zellformaten leider gar nichts.
Du kannst den Inhalt nur per Textfunktionen in einer 2. Hilfs-Spalte aufbereiten

A	        B
03581 62334	(03581) 62334
035825 5811	(035825) 5811
015126789456	(0151) 26789456
Formel in B1:
=WENN(ISTFEHLER(SUCHEN(" ";A1;1));"(" & LINKS(A1;4) & ") " & TEIL(A1;5;100);"(" & LINKS(A1;SUCHEN(" ";A1;1)-1) & ") " & TEIL(A1;SUCHEN(" ";A1;1)+1;100))

Anschließend könnte man das Ergebnis wieder als Werte in die Spalte A kopieren und die Hilfsspalte löschen.
Falls man die Telefonnummer vereinfacht eingeben und anschließend in einem bestimmten Format in der Zelle eintragen möchte, dann ist ein Makro nötig.
Die einfachste Lösung dürfte aber sein Vorwahl und Rufnummer in getrennten Spalten einzugeben. Dann kann man die Anzeige mit benutzerdefinierten Formaten gestalten und bei der Vorwahl z.B. die führende 0 weglassen.z.B: "(0"## ## 00") " für die Vorwahll
Gruß
Franz
Anzeige
AW: Telefonnummer
19.10.2006 20:29:32
Chlebnitschek
Hallo Franz
Die Variante mit den zwei Spalten ist o.k.
Aber wie könnte das Macro aussehen?
Danke Jürgen
AW: Telefonnummer
20.10.2006 01:22:11
fcs
Hallo Jürgen,
ein Makro, das nach der Eingabe die Telefonnummer in ein gewünschtes Format umwandelt, kann etwa so aussehen:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim Zelle As Range, Vorwahl As Long, Nummer As Long, Spalte As Integer, Zeile1 As Integer
Spalte = 3 'Spalte in der Telefonnummer eingegeben wird
Zeile1 = 2 'Zeile ab der Telefonnummern eingegeben werden
If Target.Column = Spalte And Target.Row >= Zeile1 And Target.Columns.Count = 1 Then
For Each Zelle In Target
If InStr(1, Zelle.Value, "(") > 0 Then
'do nothing, Zelle enthält bereits Formatierte Telefonnumer
Else
If InStr(1, Zelle.Value, " ") > 0 Then
'Vorwahl und Nummer sind durch Leerzeichen getrennt
Vorwahl = Val(Left(Zelle.Value, InStr(1, Zelle.Value, " ") - 1))
Nummer = Val(Mid(Zelle.Value, InStr(1, Zelle.Value, " ") + 1))
Else
'Funktelefonnummer ohne Leerzeichen
Vorwahl = Val(Left(Val(Zelle.Value), 3))
Nummer = Val(Mid(Val(Zelle.Value), 4))
End If
Zelle.Value = Format(Vorwahl, """(0""## 00"")""") & " " & Format(Nummer, "## ## ## ## 00")
End If
Next Zelle
End If
End Sub

Im VBA-Editor nuss du das Makro unter der Tabelle einfügen in der die Eingabe gemacht wird.
Gruss
Franz
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Telefonnummern in Excel richtig formatieren


Schritt-für-Schritt-Anleitung

  1. Eingabe der Telefonnummern: Beginne mit der Eingabe deiner Telefonnummern in Excel. Achte darauf, dass du die Vorwahlen und Rufnummern korrekt eingibst, z.B. 03581 62334 oder 015126789456.

  2. Formatierung der Zellen: Um die Zellen als Telefonnummern zu formatieren, kannst du die Zellen markieren, einen Rechtsklick machen und „Zellen formatieren“ wählen. Wähle „Benutzerdefiniert“ und gib folgendes Format ein:

    "("+0"##") "## ## ## ##"

    Dies sorgt dafür, dass die Vorwahl in Klammern erscheint.

  3. Formel zur Bereinigung: Um Telefonnummern mit Leerzeichen richtig zu formatieren, kannst du eine Formel verwenden. Setze diese in eine Hilfsspalte ein:

    =WENN(ISTFEHLER(SUCHEN(" ";A1;1));"(" & LINKS(A1;4) & ") " & TEIL(A1;5;100);"(" & LINKS(A1;SUCHEN(" ";A1;1)-1) & ") " & TEIL(A1;SUCHEN(" ";A1;1)+1;100))

    Diese Formel hilft, die Telefonnummern zu bereinigen.

  4. VBA-Makro verwenden: Wenn du häufig Telefonnummern eingeben musst, kannst du ein Makro verwenden, das die Telefonnummer automatisch formatiert. Füge den folgenden VBA-Code in das entsprechende Arbeitsblatt ein:

    Private Sub Worksheet_Change(ByVal Target As Excel.Range)
       Dim Zelle As Range, Vorwahl As Long, Nummer As Long
       If Target.Column = 3 And Target.Row >= 2 Then
           For Each Zelle In Target
               If InStr(1, Zelle.Value, "(") = 0 Then
                   If InStr(1, Zelle.Value, " ") > 0 Then
                       Vorwahl = Val(Left(Zelle.Value, InStr(1, Zelle.Value, " ") - 1))
                       Nummer = Val(Mid(Zelle.Value, InStr(1, Zelle.Value, " ") + 1))
                   Else
                       Vorwahl = Val(Left(Zelle.Value, 3))
                       Nummer = Val(Mid(Zelle.Value, 4))
                   End If
                   Zelle.Value = Format(Vorwahl, """(0""##) """) & Format(Nummer, "## ## ## ##")
               End If
           Next Zelle
       End If
    End Sub

Häufige Fehler und Lösungen

  • Fehler: Telefonnummern werden nicht korrekt angezeigt
    Lösung: Stelle sicher, dass die Zellen als Telefonnummern formatiert sind. Verwende die oben genannten Formatierungen.

  • Fehler: Eingabe von Telefonnummern mit Leerzeichen führt zu Problemen
    Lösung: Nutze die vorgeschlagene Formel zur Bereinigung, um Leerzeichen zu entfernen und die Telefonnummern korrekt zu formatieren.

  • Fehler: VBA-Makro funktioniert nicht
    Lösung: Überprüfe, ob das Makro im richtigen Arbeitsblatt eingefügt wurde und ob die Spalte korrekt definiert ist.


Alternative Methoden

  • Manuelle Formatierung: Du kannst Telefonnummern auch manuell formatieren, indem du sie in zwei Spalten aufteilst – Vorwahl und Rufnummer. So kannst du die Formatierung einfacher steuern.

  • Textfunktionen: Nutze Excel-Textfunktionen, um Telefonnummern zu bereinigen, bevor du sie formatierst. Funktionen wie LINKS(), RECHTS(), und TEIL() sind hier hilfreich.


Praktische Beispiele

  • Beispiel 1: Angenommen, du hast die Telefonnummer 03581 62334 in Zelle A1. Mit der Formel:

    =WENN(ISTFEHLER(SUCHEN(" ";A1;1));"(" & LINKS(A1;4) & ") " & TEIL(A1;5;100);"(" & LINKS(A1;SUCHEN(" ";A1;1)-1) & ") " & TEIL(A1;SUCHEN(" ";A1;1)+1;100))

    erhältst du (03581) 62334.

  • Beispiel 2: Bei einer Handynummer wie 015126789456, kannst du das Makro verwenden, um die Eingabe automatisch zu formatieren.


Tipps für Profis

  • Sonderformate: Wenn du spezielle Formate für internationale Telefonnummern benötigst, kannst du die Vorwahl mit + eingeben und die Formatierung entsprechend anpassen.

  • Zellen formatieren: Überlege, die gesamte Spalte für Telefonnummern zu formatieren, um Konsistenz zu gewährleisten, besonders wenn du mit vielen Daten arbeitest.

  • Datenvalidierung: Verwende Datenvalidierung, um sicherzustellen, dass die eingegebenen Telefonnummern einem bestimmten Format entsprechen.


FAQ: Häufige Fragen

1. Wie kann ich Telefonnummern in Excel bereinigen?
Du kannst die oben genannten Formeln verwenden oder VBA-Makros einsetzen, um Telefonnummern einheitlich zu formatieren.

2. Was mache ich, wenn das Sonderformat für Telefonnummern fehlt?
Überprüfe die Zellenformatierung und stelle sicher, dass du ein benutzerdefiniertes Format für Telefonnummern einstellst.

3. Kann ich internationale Telefonnummern eingeben?
Ja, du kannst internationale Telefonnummern eingeben, indem du die Vorwahl mit + formatierst und das entsprechende Format in Excel anpasst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige