Estuve buscando una función para convertir una cantidad de un número a su equivalente con letra en LibreOffice. Para Excel existen varias pero para Calc son un poco más difíciles de encontrar.
Luego me acordé del proyecto Factura Libre que ya incluye una función para hacerlo. Sólo necesitaba buscar el código y pegarlo en un proyecto nuevo.
Tabla de contenidos
- Dónde agregar el código de la función.
- El código de la función para obtener la cantidad en letra.
- Ajustando la cantidad con letra para México
- Descarga una hoja de cálculo de ejemplo.
- Revisando las opciones de seguridad
Para lograrlo hay que seguir estas instrucciones o descargar el ejemplo.
Dónde agregar el código de la función.
Vamos al menú Herramientas >> Macros >> Organizar macros >> BASIC…

Seleccionamos la hoja de cálculo actual, presionamos el botón Nuevo y le ponemos un nombre a nuestro módulo.

Luego en la ventana que aparece pegamos el código de la función.
El código de la función para obtener la cantidad en letra.
Es importante eliminar el código por default del módulo.
REM ***** BASIC ***** Sub Main End Sub
Ahora podemos copiar y pegar el código de la función en el módulo que acabamos de crear.
Option Explicit '************************************************************************************************* ' FUNCION PARA CONVERTIR NUMEROS A LETRAS ' ' Copyright (C) 2005 Mauricio Baeza Servin ' Este programa es software libre. Puede redistribuirlo y/o modificarlo bajo los términos de la ' Licencia Pública General de GNU según es publicada por la Free Software Foundation, bien de la ' versión 2 de dicha Licencia o bien (según su elección) de cualquier versión posterior. ' ' Este programa se distribuye con la esperanza de que sea útil, pero SIN NINGUNA GARANTÍA, incluso ' sin la garantía MERCANTIL implícita o sin garantizar la CONVENIENCIA PARA UN PROPÓSITO PARTICULAR. ' Véase la Licencia Pública General de GNU para más detalles. ' ' Debería haber recibido una copia de la Licencia Pública General junto con este programa. Si no ha ' sido así, escriba a la Free Software Foundation, Inc., en 675 Mass Ave, Cambridge, MA 02139, EEUU. ' ' Mauricio Baeza - mauricio@correolibre.net ' '************************************************************************************************* 'Hago uso de variables bastante explicitas para facilitar la lectura del codigo 'Los comentarios cumplen y complementan la misma funcion 'Ultima modificacion Octubre del 2002 'Argumentos: 'Numero = Valor que deseamos convertir en texto 'Moneda = es el nombre de la moneda a mostrar 'Fraccion_Letras = Verdadero para que la fraccion de la moneda ' tambien la convierta a letras 'Fraccion = Es el nombre de la fraccion de la moneda 'Texto_Inicial = Cualquier texto que quieras al principio del resultado 'Texto_Final = Cualquier texto que quieras al finla del resultado 'Estilo = Formato de salida ' 1 = MAYUSCULAS ' 2 = minusculas ' 3 = Tipo Titulo 'Los valores negativos los convierte a positivos 'El valor minimo en 0, el valor maximo es 9,999,999,999,999.99 Function Numeros_Letras(ByVal Numero As Double, _ ByVal Moneda As String, _ ByVal Fraccion_Letras As Boolean , _ ByVal Fraccion As String, _ ByVal Texto_Inicial As String, _ ByVal Texto_Final As String, _ ByVal Estilo As Integer) As String Dim strLetras As String Dim NumTmp As String Dim intFraccion As Integer strLetras = Texto_Inicial 'Convertimos a positivo si es negativo Numero = Abs(Numero) NumTmp = Format(Numero, "000000000000000.00") If Numero < 1 Then strLetras = strLetras & "cero " & Plural(Moneda) & " " Else strLetras = strLetras & NumLet(Val(Left(NumTmp, 15))) If Val(NumTmp) = 1 Or Val(NumTmp) < 2 Then strLetras = strLetras & Moneda & " " ElseIf Val(Mid(NumTmp, 4, 12)) = 0 Or Val(Mid(NumTmp, 10, 6)) = 0 Then strLetras = strLetras & "de " & Plural(Moneda) & " " Else strLetras = strLetras & Plural(Moneda) & " " End If End If If Fraccion_Letras Then intFraccion = Val(Right(NumTmp, 2)) Select Case intFraccion Case 0 strLetras = strLetras & "con cero " & Plural(Fraccion) Case 1 strLetras = strLetras & "con un " & Fraccion Case Else strLetras = strLetras & "con " & NumLet(Val(Right(NumTmp, 2))) & Plural(Fraccion) End Select Else strLetras = strLetras & Right(NumTmp, 2) End If strLetras = strLetras & Texto_Final Select Case Estilo Case 1 strLetras = UCase(strLetras) Case 2 strLetras = LCase(strLetras) Case 3 strLetras = strLetras 'StrConv(strLetras, vbProperCase) End Select Numeros_Letras = strLetras End Function Function NumLet(ByVal Numero As Double) As String Dim NumTmp As String Dim co1 As Integer Dim co2 As Integer Dim pos As Integer Dim dig As Integer Dim cen As Integer Dim dec As Integer Dim uni As Integer Dim letra1 As String Dim letra2 As String Dim letra3 As String Dim Leyenda As String Dim TFNumero As String NumTmp = Format(Numero, "000000000000000") 'Le da un formato fijo co1 = 1 pos = 1 TFNumero = "" 'Para extraer tres digitos cada vez Do While co1 <= 5 co2 = 1 Do While co2 <= 3 'Extrae un digito cada vez de izquierda a derecha dig = Val(Mid(NumTmp, pos, 1)) Select Case co2 Case 1: cen = dig Case 2: dec = dig Case 3: uni = dig End Select co2 = co2 + 1 pos = pos + 1 Loop letra3 = Centena(uni, dec, cen) letra2 = Decena(uni, dec) letra1 = Unidad(uni, dec) Select Case co1 Case 1 If cen + dec + uni = 1 Then Leyenda = "billon " ElseIf cen + dec + uni > 1 Then Leyenda = "billones " End If Case 2 If cen + dec + uni >= 1 And Val(Mid(NumTmp, 7, 3)) = 0 Then Leyenda = "mil millones " ElseIf cen + dec + uni >= 1 Then Leyenda = "mil " End If Case 3 If cen + dec = 0 And uni = 1 Then Leyenda = "millon " ElseIf cen > 0 Or dec > 0 Or uni > 1 Then Leyenda = "millones " End If Case 4 If cen + dec + uni >= 1 Then Leyenda = "mil " End If Case 5 If cen + dec + uni >= 1 Then Leyenda = "" End If End Select co1 = co1 + 1 TFNumero = TFNumero + letra3 + letra2 + letra1 + Leyenda Leyenda = "" letra1 = "" letra2 = "" letra3 = "" Loop NumLet = TFNumero End Function Function Centena(ByVal uni As Integer, ByVal dec As Integer, _ ByVal cen As Integer) As String Dim cTexto As String Select Case cen Case 1 If dec + uni = 0 Then cTexto = "cien " Else cTexto = "ciento " End If Case 2: cTexto = "doscientos " Case 3: cTexto = "trescientos " Case 4: cTexto = "cuatrocientos " Case 5: cTexto = "quinientos " Case 6: cTexto = "seiscientos " Case 7: cTexto = "setecientos " Case 8: cTexto = "ochocientos " Case 9: cTexto = "novecientos " Case Else: cTexto = "" End Select Centena = cTexto End Function Function Decena(ByVal uni As Integer, ByVal dec As Integer) As String Dim cTexto As String Select Case dec Case 1: Select Case uni Case 0: cTexto = "diez " Case 1: cTexto = "once " Case 2: cTexto = "doce " Case 3: cTexto = "trece " Case 4: cTexto = "catorce " Case 5: cTexto = "quince " Case 6 To 9: cTexto = "dieci" End Select Case 2: If uni = 0 Then cTexto = "veinte " ElseIf uni > 0 Then cTexto = "veinti" End If Case 3: cTexto = "treinta " Case 4: cTexto = "cuarenta " Case 5: cTexto = "cincuenta " Case 6: cTexto = "sesenta " Case 7: cTexto = "setenta " Case 8: cTexto = "ochenta " Case 9: cTexto = "noventa " Case Else: cTexto = "" End Select If uni > 0 And dec > 2 Then cTexto = cTexto + "y " Decena = cTexto End Function Function Unidad(ByVal uni As Integer, ByVal dec As Integer) As String Dim cTexto As String If dec <> 1 Then Select Case uni Case 1: cTexto = "un " Case 2: cTexto = "dos " Case 3: cTexto = "tres " Case 4: cTexto = "cuatro " Case 5: cTexto = "cinco " End Select End If Select Case uni Case 6: cTexto = "seis " Case 7: cTexto = "siete " Case 8: cTexto = "ocho " Case 9: cTexto = "nueve " End Select Unidad = cTexto End Function 'Funcion que convierte al plural el argumento pasado Private Function Plural(ByVal Palabra As String) As String Dim pos As Integer Dim strPal As String If Len(Trim(Palabra)) > 0 Then pos = InStr(1, "aeiou", Right(Palabra, 1), 1) If pos > 0 Then strPal = Palabra & "s" Else strPal = Palabra & "es" End If End If Plural = strPal End Function

Ajustando la cantidad con letra para México
La función tiene 7 parámetros.
- Numero = Valor que deseamos convertir en texto
- Moneda = es el nombre de la moneda a mostrar
- Fraccion_Letras = Para que la fracción de la moneda tambien la convierta a letras. 1 es VERDADERO, 0 (cero) es FALSO.
- Fraccion = Es el nombre de la fraccion de la moneda
- Texto_Inicial = Cualquier texto que quieras al principio del resultado
- Texto_Final = Cualquier texto que quieras al final del resultado
- Estilo = Formato de salida 1 = MAYÚSCULAS, 2 = minúsculas , 3 = Tipo Titulo
Los valores negativos los convierte a positivos. El valor minimo es 0, el valor maximo es 9,999,999,999,999.99
Veamos, una fórmula como está dará el siguiente resultado:
=NUMEROS_LETRAS(B4, "peso",0, "centavos", "Cantidad: ", "/100 M.N.",1) CANTIDAD: UN MIL DOSCIENTOS TREINTA Y CINCO PESOS 15/100 M.N.
Descarga una hoja de cálculo de ejemplo.
Si lo desean pueden descargar esta hoja de cálculo que muestra como se usa la función LibreOffice Números a Letras.ods

Revisando las opciones de seguridad
Un detalle final, si descarga el archivo de ejemplo, es probable que reciba una alerta de seguridad.

Es normal porque es cierto, el archivo contiene una macro. Solo tiene que presionar el botón de Activar macros para que funcione o si es usted muy desconfiado, pues a copiar y pegar el código.
Si vas a usar frecuentemente el archivo este mensaje puede parecer un poco molesto. Puedes ir a Opciones – LibreOffice – Seguridad – Seguridad de macros y tienes dos opciones. Bajar el nivel de seguridad o lo que yo hago, agregar una carpeta a las Ubicaciones de archivos de confianza.

Muchas Gracias a Mauricio Baeza por liberar este código bajo la licencia GPL.
Mil gracias. Llevaba semanas buscando la solución para libreoffice.
Muchisimas gracias!!!
este es el primer código de macros para esta función que realmente me funciono. Probé con muchos de otras paginas web y nunca me funcionaban, asi que a mi me sirvio mucho. Muchas gracias!!! 🙂
Pues me gustaría ayudarte, pero no se que es lo que esta pasando en tu equipo. Lo acabo de revisar con la versión que tengo y descargando el mismo archivo de ejemplo y funciona.
¿Copiaste el código? ¿O bajaste el archivo de ejemplo?.
Hola! es muy util. solo que no me funciona. Es como que no reconoce la nueva funcion. El archivo que descargué sale con error ¡VALOR! quizás esté copiando mal el codigo
Hola Yamila,
Primero y antes que nada. Gracias por comentar.
Vámonos por pasos. ¿Descargaste el archivo de ejemplo y activaste las macros?. Si no activas las macros te va a aparecer el error de VALOR al llamar la función.
Acabo acabo de descargar el archivo de ejemplo para revisar si hay algún problema con las nuevas versiones de LibreOffice y funciona muy bien.
Saludos !!!
Pasa lo mismo:
—-Quote—-
Función para convertir de número a cantidad con letra.
$1,235.15
#VALOR!
#VALOR!
#VALOR!
—-Unquote—-
No es cosa de Oper o LibreOffice. Yo uso libre office.
Puse las macros en el nivel de seguridad más bajo y ni asi.
¿Puedes dar una respuesta a este problema?
Saludos
me pasaba lo mismo, hice los cambios de seguridad a medio, y reinicie el programa, ya me apareció ventana de si quiero habilitar macros… le di Yes.. y ya funciono a la perfección,…
hola, segui tus instrucciones para pegar el codigo pero me aparece un error, asi que me descargue el archivo numeros-a-letras.ods , sin embargo no me aparecio la cantidad en letra
Función para convertir de número a cantidad con letra.
$1,235.15
#VALOR!
#VALOR!
#VALOR!
Si lo desean, pueden consultar
http://linuxmanr4.com/2011/11/29/funcion-para-convertir-de-numero-a-cantidad-con-letra-en-libreoffice-calc/
me podrias ayudar? estoy utilizando openoffice4.1.5
Intenta usando LibreOffice en lugar de OpenOffice. 😊 ¡Saludos!
Hola, solo agradecer por compartir esta macro, yo lo he adecuado para usarlo para convertir montos en letras y que me agregue tanto los colones como los centimos, y ha sido una maravilla. intentaré compartir aquí como ha quedado el código
(código … mucho código)
Hola Yendry,
Lamentablemente he tenido que quitar el código que pusiste en tu comentario. Verás, no siempre se pega de la forma correcta y no se puede utilizar.
Pero si gustas pegarlo aquí https://linuxmanr4.com/paste/ con mucho gusto edito tu comentario para que aparezca.
Saludos 🙂
Muchisimas gracias por este código! Soy contador y no sabés lo que es agregar a mano 500 numeros a letras de cada bono de sueldo!
Ya mismo agrego la página en favoritos!
Bendiciones desde Mendoza Argentina
Gracias al software libre mi estimado Matías 🙂
Buen día
he intentado instalar esta función pero no logro que me funcione, este es el error que me sale, agradecería mucho la ayuda
Se produjo un error de entorno al ejecutar la secuencia de órdenes Standard.NUMEROALETRA.Centena escrita en Basic.
Mensaje: wrong number of parameters!
Hola Nora,
La función utiliza 7 parámetros separados por comas. Mira este ejemplo:
También puedes descargar la hoja de cálculo al final de este artículo para que veas como funciona.
Saludos.
amigo buenos días, estoy utilizando libre office 5 en sistema canaima, por mas que intento que la formula funcione me da error.
Se produjo un error de entorno al ejecutar la secuencia de órdenes Standard.numeroALetras.NumLet escrita en Basic.
Mensaje: wrong number of parameters!
quisiera saber si cuentan con la hoja de ejemplo que ustedes colocaron o si me podeis ayudar. un abrazo y que la fuerza los acompañe.
Buenos días Victor,
Hice una corrección al artículo y ya es posible descargar la hoja de cálculo. Esta en un archivo zip. Lo acabo de revisar y funciona sin problemas en la última versión de LibreOffice.
Saludos 🙂
Buenas amigos, alguien sabria como configurar este macro para que el estilo solo sea mayuscula.
Hola David,
El último parámetro de la función es el estilo, si le pones 1, entonces el resultado será en mayúsculas.
Sólo baja el ejemplo y haz algunas pruebas.
Saludos 🙂
buen día amigo muchas gracias por su respuesta, pero me puedes colaborar mas exactamente donde se pone el numero 1 por que no se.
Claro David,
Espero que así ya no te quede duda…
Saludos !!!.
Listo ya resolvi..Gracias
Excelente… ¿Y porque no compartes tus modificaciones?, modifico este artículo para agregar tu regionalización de la función.
FUNCIÓN:
=NUMEROS_LETRAS(I39; «bolívar»;0; «centimo»; » «; «/100 centimos «;1)
CODIGO:
Function Numeros_Letras(ByVal Numero As Double, _
ByVal Moneda As String, _
ByVal Fraccion_Letras As Boolean , _
ByVal Fraccion As String, _
ByVal Texto_Inicial As String, _
ByVal Texto_Final As String, _
ByVal Estilo As Integer) As String
Dim strLetras As String
Dim NumTmp As String
Dim intFraccion As Integer
strLetras = Texto_Inicial
‘Convertimos a positivo si es negativo
Numero = Abs(Numero)
NumTmp = Format(Numero, «000000000000000.00»)
If Numero < 1 Then
strLetras = strLetras & «cero » & Plural(Moneda) & » »
Else
strLetras = strLetras & NumLet(Val(Left(NumTmp, 15)))
If Val(NumTmp) = 1 Or Val(NumTmp) < 2 Then
strLetras = strLetras & Moneda & » »
ElseIf Val(Mid(NumTmp, 4, 12)) = 0 Or Val(Mid(NumTmp, 10, 6)) = 0 Then
strLetras = strLetras & «de » & Plural(Moneda) & » »
Else
strLetras = strLetras & Plural(Moneda) & » »
End If
End If
If Fraccion_Letras Then
intFraccion = Val(Right(NumTmp, 2))
Select Case intFraccion
Case 0
strLetras = strLetras & «con cero » & Plural(Fraccion)
Case 1
strLetras = strLetras & «con un » & Fraccion
Case Else
strLetras = strLetras & «con » & NumLet(Val(Right(NumTmp, 2))) & Plural(Fraccion)
End Select
Else
strLetras = strLetras & Right(NumTmp, 2)
End If
strLetras = strLetras & Texto_Final
Select Case Estilo
Case 1
strLetras = UCase(strLetras)
Case 2
strLetras = LCase(strLetras)
Case 3
strLetras = strLetras ‘StrConv(strLetras, vbProperCase)
End Select
Numeros_Letras = strLetras
End Function
Function NumLet(ByVal Numero As Double) As String
Dim NumTmp As String
Dim co1 As Integer
Dim co2 As Integer
Dim pos As Integer
Dim dig As Integer
Dim cen As Integer
Dim dec As Integer
Dim uni As Integer
Dim letra1 As String
Dim letra2 As String
Dim letra3 As String
Dim Leyenda As String
Dim TFNumero As String
NumTmp = Format(Numero, «000000000000000») ‘Le da un formato fijo
co1 = 1
pos = 1
TFNumero = «»
‘Para extraer tres digitos cada vez
Do While co1 <= 5
co2 = 1
Do While co2 <= 3
‘Extrae un digito cada vez de izquierda a derecha
dig = Val(Mid(NumTmp, pos, 1))
Select Case co2
Case 1: cen = dig
Case 2: dec = dig
Case 3: uni = dig
End Select
co2 = co2 + 1
pos = pos + 1
Loop
letra3 = Centena(uni, dec, cen)
letra2 = Decena(uni, dec)
letra1 = Unidad(uni, dec)
Loop
NumLet = TFNumero
End Function
Function Centena(ByVal uni As Integer, ByVal dec As Integer, _
ByVal cen As Integer) As String
Dim cTexto As String
Select Case cen
Case 1
If dec + uni = 0 Then
cTexto = «cien »
Else
cTexto = «ciento »
End If
Case 2: cTexto = «doscientos »
Case 3: cTexto = «trescientos »
Case 4: cTexto = «cuatrocientos »
Case 5: cTexto = «quinientos »
Case 6: cTexto = «seiscientos »
Case 7: cTexto = «setecientos »
Case 8: cTexto = «ochocientos »
Case 9: cTexto = «novecientos »
Case Else: cTexto = «»
End Select
Centena = cTexto
End Function
Function Decena(ByVal uni As Integer, ByVal dec As Integer) As String
Dim cTexto As String
Select Case dec
Case 1:
Select Case uni
Case 0: cTexto = «diez »
Case 1: cTexto = «once »
Case 2: cTexto = «doce »
Case 3: cTexto = «trece »
Case 4: cTexto = «catorce »
Case 5: cTexto = «quince »
Case 6 To 9: cTexto = «dieci»
End Select
Case 2:
If uni = 0 Then
cTexto = «veinte »
ElseIf uni > 0 Then
cTexto = «veinti»
End If
Case 3: cTexto = «treinta »
Case 4: cTexto = «cuarenta »
Case 5: cTexto = «cincuenta »
Case 6: cTexto = «sesenta »
Case 7: cTexto = «setenta »
Case 8: cTexto = «ochenta »
Case 9: cTexto = «noventa »
Case Else: cTexto = «»
End Select
If uni > 0 And dec > 2 Then cTexto = cTexto + «y «
Decena = cTexto
End Function
Function Unidad(ByVal uni As Integer, ByVal dec As Integer) As String
Dim cTexto As String
If dec <> 1 Then
Select Case uni
Case 1: cTexto = «un »
Case 2: cTexto = «dos »
Case 3: cTexto = «tres »
Case 4: cTexto = «cuatro »
Case 5: cTexto = «cinco »
End Select
End If
Select Case uni
Case 6: cTexto = «seis »
Case 7: cTexto = «siete »
Case 8: cTexto = «ocho »
Case 9: cTexto = «nueve »
End Select
Unidad = cTexto
End Function
‘Funcion que convierte al plural el argumento pasado
Private Function Plural(ByVal Palabra As String) As String
Dim pos As Integer
Dim strPal As String
If Len(Trim(Palabra)) > 0 Then
pos = InStr(1, «aeiou», Right(Palabra, 1), 1)
If pos > 0 Then
strPal = Palabra & «s»
Else
strPal = Palabra & «es con»
End If
End If
Plural = strPal
End Function
Sub Macro1
End Sub
Como vez, es complicado compartir código en los comentarios, voy a intentar hacerlo funcionar para compartirlo adecuadamente … Gracias por compartir 🙂
como agrego el «con» a la aplicación: Ejemplo 2350,25= tres mil seiscientos cincuenta bolívares con 25/100 céntimos
vperez21@outlook.com
Fe de errata…repito la solicitud
Ej. 2350,25= se lee DOS MIL TRECIENTOS CINCUENTA CON 25/100 ; Es decir quiero combinar el prefijo «con» y la expresion decimal 00/100…Así suele hacerse en Venezuela..
Agradecido
Hola Victor,
Ya ve, no era tan difícil decir exactamente lo que quieres, porque no era un error.
Tendrías que modificar el código para que muestre la cantidad con letra exactamente como lo deseas.
Saludos.
Muchas gracias hermano, ese es el detalle de todo el problema… No logro identificar en la codificación del lenguaje la forma para colocar el prefijo «con» antes de 00/100.
Si, el detalle es que la necesito para varios archivos que tengo para mi trabajo… y tengo una base de datos bastante extensa.
Agradecido de antemano
Hermano por mas que intento instalar dicha macro (Numeros a Letras) en mi computadora, siguiendo todos los pasos y procedimientos que indicas, la misma me da un error.
Hola Victor,
Solo para revisar si había alguna adaptación en el texto de este artículo, seguí estos mismos pasos en una instalación nueva que tengo de Libreoffice y funciona perfectamente.
Creo que con esta es la tercera vez que te pregunto ¿Qué error te muestra? y no me dices cual es o en su defecto comparte una captura de pantalla con el error. Sin más información no puedo ayudarte.
Saludos.
Buena funcion, creo que podria se muy util pues en documentos como pagares, letras de cambio o recibos generalmente se escribe el numero en palabras. seria inteesante pasar el codigo a PHP paa poder ofrecer esta funcion en un sitio web
Gracias.
Pues adelante !!! sólo tienes que revisar la lógica de la función y listo.
Hola. Algo estaré haciendo mal, que a mí, no me funciona. Descargué el archivo ejemplo, y sin haberlo modifiado, tampoco me funcionó. :/ ¿Qué puedo revisar para ver por qué falla?
Hola DBarboza…
¿Activaste las macros?
Hermano por mas que intento instalar dicha macro (Numeros a Letras) en mi computadora, siguiendo todos los pasos y procedimientos que indicas, la misma me da un error.
LibreOffice
Amigo, no necesitas instalar la macro, el archivo de descarga ya la tiene integrada.
¿Que error te da?
Hola César, para quitar el símbolo de moneda sólo tienes que quitarle el formato de moneda, es parecido a excel. Sólo dale formato a la celda.
Con respecto al «con» creo que es como en el tercer ejemplo que aparece en la imagen. ¿Podrías decirme exactamente como lo quieres?
Saludos.
Buenas amigo, alguien sabria como configurar este macro para que en la primera linea de letras me aparezca la palabra «con» justo antes de los decimales… Y como hago para quitar el simbolo de la moneda ($) que aparece automaticamente al presionar enter luego de introducir la cantidad…
Exclente me sirvio mucho, sólo corregir ‘S’, ‘ES’ en plural al final de la macro, queda perfecto para Perú.
No lo he intentado, @Jorge , como estas funciones son muy particulares. Por cierto eso de los xla son un dolor de cabeza en Excel, siempre pensando que son problemas de seguridad 🙂
En excel se puede crear un complemento (archivo xla) para que siempre este disponible en cualquier documento, ¿Alquien sabe si se puede hacer los mismo en Libreoffice? salu2 a to2
Excelente aporte amigo!!!! Gracias!!!!
Hay buenas extensiones para LibreOffice y OpenOffice en la página de [Tokonhu de México](http://gw.gd/8ZCl), incluidas unas para convertir de números a letras las cantidades
Saludos
Ruan
También le di un vistazo, pero para empezar necesita Java, no es tan personalizable como esta función ya que tiene varios parámetros y además el código fuente.
Muchas gracias esta buenaza la funcion !!
Muy agradecido me sirve para el trabajo 😀
Muy buena la función!
Muchas gracias por compartirla 😀