Todos hemos visto los anuncios en la televisión: «Llame al 1-800-GET THIS para obtener su juego de cuchillos súper afilados». Es posible que se enfrente a la necesidad de convertir números de teléfono de la versión de texto (como se muestra en los anuncios) a los números representados por ese texto. La siguiente macro, DoPhone, realizará la magia de conversión por ti:

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

El procedimiento DoPhone intenta convertir la información en cualquier celda que no contenga una fórmula. Todo lo que necesita hacer es seleccionar la celda (o celdas) que desea convertir y luego ejecutar el procedimiento. El resultado es que cualquier texto de las celdas se convierte en sus equivalentes de dígitos en un teléfono. Por lo tanto, 598-TIPS se convierte en 598-8477.

Debe tener en cuenta una pequeña peculiaridad de DoPhone y es posible que desee cambiarla. Algunos teléfonos reconocen las letras Q y Z como los dígitos 7 y 9, respectivamente. Otros simplemente omiten estos dígitos o se convierten a 0. DoPhone, como está escrito aquí, convierte estas letras en 7 y 9. Puede cambiar los lugares apropiados en la estructura Seleccionar caso, según lo desee, para que se cambien a números según a sus necesidades. (Los lugares apropiados se comentan en la lista.)

_Nota: _

Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.

link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador].

ExcelTips es su fuente de formación rentable en Microsoft Excel.

Este consejo (11802) se aplica a Microsoft Excel 2007, 2010, 2013 y 2016.

Puede encontrar una versión de este consejo para la interfaz de menú anterior de Excel aquí:

enlace: / excel-Converting_Phone_Numbers [Conversión de números de teléfono].