¿Cómo se hace con una macro para convertir caracteres numéricos a letras, pero mostrando las cifras por separado?

Por ejemplo: si en una celda indico el número 5643 (cinco mil seiscientos cuarenta y tres), deseo que en otra contigua se muestre así: cinco-seis-cuatro-tres.

2 respuestas

Respuesta
3

H o l a: Pon la siguiente función en un módulo

Function NumeroALetras(num As Range)
'Por.Dante Amor
    res = ""
    letras = Array("cero", "uno", "dos", "tres", "cuatro", "cinco", "seis", _
                   "siete", "ocho", "nueve")
    If Not IsNumeric(num) Then
        res = "No es número "
    Else
        For i = 1 To Len(num)
            n = Mid(num, i, 1)
            res = res & letras(n) & "-"
        Next
    End If
    res = Left(res, Len(res) - 1)
    NumeroALetras = res
End Function

Sigue las Instrucciones para una Función

  1. Abre tu libro de excel
  2. Para abrir VBa y poder pegar la función, Presiona Alt + F11
  3. En el menú elige Insertar / Módulo
  4. En el panel del lado derecho copia la función
  5. En cualquier celda utiliza la función, como cualquier otra función de excel

Después de realizar los pasos anteriores, por ejemplo, si en la celda B6 tienes el número, entonces en la celda C6 pon la función de esta forma:

=NumeroALetras(B6)
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias
Respuesta
-1

No necesariamente necesitas una macro, con esta fórmula, te hace lo que necesitas, supongamos que tienes un valor en la celda "A1" cuyo valor sea 4.265,25. Deberás colocar en la celda donde necesites el resultado por ejemplo "A5" allí deberás colocar la siguiente fórmula;

=CONCATENAR("(SON "; MAYUSC(CONVERTIRNUM(A1)); " CENTIMOS)")

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas