Cómo usar números en vez de letras en las columnas Excel

Utilizar funciones de excel

En las versiones de Excel 2013 y Excel 2016 no existe una función predeterminada que permita mostrar los números como palabras en inglés dentro de una hoja de cálculo, pero lo que sí es válido es agregar esta funcionalidad pegando el código de la herramienta SPELLNUMBER en una hoja de módulo. Dicha función de Excel te permitirá convertir números en palabras en las columnas de Excel.

Crear la función SPELLNUMBER para convertir números en letras

Paso 1. Utiliza el método de las teclas ALT + F11 para abrir el editor de Visual Basic.

También puedes obtener acceso a dicho editor en caso de que se muestre en la pestaña PROGRAMADOR en la cinta de opciones.

Después, haz clic en la pestaña INSERTAR > MÓDULO.

Paso 2. Ahora debes copiar las siguientes líneas de código a continuación. Este código es conocido como FUNCIÓN DE MACRO, ya que automatiza la tarea de convertir los números en letras dentro de toda la hoja de Excel.

 

Option Explicit

'Función principal

Function SpellNumber(ByVal MyNumber)

Dim Dollars, Cents, TempDim DecimalPlace, CountReDim Place(9) As StringPlace(2) = " Thousand "Place(3) = " Million "Place(4) = " Billion "Place(5) = " Trillion " ' Representación de cadena del importe.MyNumber = Trim(Str(MyNumber))' Posición de decimal 0 si no hayninguno.DecimalPlace= InStr(MyNumber, ".")' Convertir céntimos y establecer MyNumber en cantidad de dólares.If DecimalPlace > 0 Then

Cents = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & _ "00", 2))

MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))

End IfCount = 1Do While MyNumber <> ""Temp = GetHundreds(Right(MyNumber, 3))

If Temp <> "" Then Dollars = Temp & Place(Count) & Dollars

If Len(MyNumber) > 3 Then

MyNumber = Left(MyNumber, Len(MyNumber) - 3)

Else

MyNumber = ""

End If

Count = Count + 1

Loop

Select Case Dollars

Case ""

Dollars = "No Dollars"

Case "One"

Dollars = "One Dollar"

Case Else

Dollars = Dollars & " Dollars"

End Select

Select Case Cents

Case ""

Cents = " and No Cents"

Case "One"

Cents = " and One Cent"

Case Else

Cents = " and " & Cents & " Cents"

End Select

SpellNumber = Dollars & Cents

End Function

' Convierte un número entre 100 y 999 en texto

Function GetHundreds(ByVal MyNumber)

Dim Result As String

If Val(MyNumber) = 0 Then Exit Function

MyNumber = Right("000" & MyNumber, 3)

' Convertir la posición de las centenas.

If Mid(MyNumber, 1, 1) <> "0" Then

Result = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred "

End If

' Convertir la posición de las decenas y unidades.

If Mid(MyNumber, 2, 1) <> "0" Then

Result = Result & GetTens(Mid(MyNumber, 2))

Else

Result = Result & GetDigit(Mid(MyNumber, 3))

End If



GetHundreds = Result

End Function

' Convierte un número entre 10 y 99 en texto

Function GetTens(TensText)

Dim Result As String

Result = "" ' Convertir en NULL el valor de función temporal.

 

If Val(Left(TensText, 1)) = 1 Then ' Si el valor está comprendido entre 10-19...

Select Case Val(TensText)

Case 10: Result = "Ten"

Case 11: Result = "Eleven"

Case 12: Result = "Twelve"

Case 13: Result = "Thirteen"

Case 14: Result = "Fourteen"

Case 15: Result = "Fifteen"

Case 16: Result = "Sixteen"

Case 17: Result = "Seventeen"

Case 18: Result = "Eighteen"

Case 19: Result = "Nineteen"

Case Else

End Select

Else ' Si el valor está entre 20 y 99...

Select Case Val(Left(TensText, 1))

Case 2: Result = "Twenty "

Case 3: Result = "Thirty "

Case 4: Result = "Forty "

Case 5: Result = "Fifty "

Case 6: Result = "Sixty "

Case 7: Result = "Seventy "

Case 8: Result = "Eighty "

Case 9: Result = "Ninety "

Case Else

End Select

Result = Result & GetDigit _

(Right(TensText, 1)) ' Recupera una posición.

End If

GetTens = Result

End Function

' Convierte un número entre 1 y 9 en texto.

Function GetDigit(Digit)

Select Case Val(Digit)

Case 1: GetDigit = "One"

Case 2: GetDigit = "Two"

Case 3: GetDigit = "Three"

Case 4: GetDigit = "Four"

Case 5: GetDigit = "Five"

Case 6: GetDigit = "Six"

Case 7: GetDigit = "Seven"

Case 8: GetDigit = "Eight"

Case 9: GetDigit = "Nine"

Case Else: GetDigit = ""

End Select

End Function

Paso 3.  Pega las líneas de dicho código en el cuadro MÓDULO 1 (CÓDIGO).

Paso 4. Haz clic en ARCHIVO > CERRAR  y vuelve a iniciar Microsoft Excel. De esta manera la función SPELLNUMBER estará lista para usar.

 

  • ¿Te ha servido de ayuda?
  • No