Konvertieren von Telefonnummern (Microsoft Excel)
Wir haben alle die Werbung im Fernsehen gesehen: „Rufen Sie 1-800-GET THIS für Ihren Satz superscharfer Messer an.“ Möglicherweise müssen Sie Telefonnummern aus der Textversion (wie in den Anzeigen angegeben) in die durch diesen Text dargestellten Nummern konvertieren. Das folgende Makro, DoPhone, führt die Konvertierungsmagie für Sie aus:
Sub DoPhone() Dim rngSrc As Range Dim lMax As Long, lCtr As Long Dim J As Integer Dim Phone As String, Digit As String Set rngSrc = ActiveSheet.Range(ActiveWindow.Selection.Address) lMax = rngSrc.Cells.Count For lCtr = 1 To lMax If Not rngSrc.Cells(lCtr).HasFormula Then Phone = rngSrc.Cells(lCtr).Value For J = 1 To Len(Phone) Digit = Ucase(Mid(Phone, J, 1)) Select Case Digit Case "A" To "P" Digit = Chr((Asc(Digit) + 1) \ 3 + 28) Case "Q" Digit = "7" 'May want to change Case "R" To "Y" Digit = Chr(Asc(Digit) \ 3 + 28) Case "Z" Digit = "9" 'May want to change End Select Mid(Phone, J, 1) = Digit Next J rngSrc.Cells(lCtr).Value = Phone End If Next lCtr End Sub
Die DoPhone-Prozedur versucht, die Informationen in eine Zelle zu konvertieren, die keine Formel enthält. Sie müssen lediglich die Zelle (n) auswählen, die Sie konvertieren möchten, und dann die Prozedur ausführen. Das Ergebnis ist, dass jeder Text in den Zellen auf einem Telefon in ihre Ziffernäquivalente konvertiert wird. Somit wird 598-Tips zu 598-8477.
Sie sollten eine kleine Besonderheit von DoPhone beachten und diese möglicherweise ändern. Einige Telefone erkennen die Buchstaben Q und Z als die Ziffern 7 bzw. 9. Andere lassen diese Ziffern einfach weg oder sie werden in 0 konvertiert. DoPhone konvertiert, wie hier geschrieben, diese Buchstaben in 7 und 9. Sie können die entsprechenden Stellen in der Select Case-Struktur nach Bedarf ändern, sodass sie entsprechend in Zahlen geändert werden auf Ihre Bedürfnisse. (Die entsprechenden Stellen sind in der Liste kommentiert.)
_Hinweis: _
Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.
ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.
Dieser Tipp (2269) gilt für Microsoft Excel 97, 2000, 2002 und 2003. Eine Version dieses Tipps für die Multifunktionsleistenschnittstelle von Excel (Excel 2007 und höher) finden Sie hier: