Duda sobre excel

Hola mi pregunta es la siguiente
¿Existe alguna fórmula en excel que permita pasar números a texto automáticamente ¿
Gracias

1 Respuesta

Respuesta
1
Convertir números a letras en Excel
Ya que mediante el formato de Excel no es posible, la solución puede ser crear un módulo de Visual Basic que nos realice el trabajo. Afortunadamente, Microsoft nos ofrece otra alternativa en su página web del área de descarga de Excel. Se trata de utilizar una función llamada Recibo, que se encuentra en una librería dinámica y que puede llamarse desde Excel definiendo una función.
Veamos los pasos a seguir:
Descargamos a nuestro disco duro el archivo E10467.EXE de la dirección http://www.microsoft.com/spain/support/kbsl/softlib/msfiles/E10467.EXE
El archivo E10467.EXE contiene dos archivos empaquetados: DLLTCAST.DLL y E10467.DOC. El primero es la librería dinámica que contiene la función Recibo y el segundo es un archivo de Word con las instrucciones para utilizar en Excel la función. Ejecutamos el archivo E10467.EXE y copiamos el archivo DLLTCAST.DLL a la carpeta c:\windows\system de nuestro disco duro.
Arrancamos Excel y en un nuevo libro o en el que necesitemos utilizar la conversión de números a letras, insertamos un nuevo módulo de Visual Basic. En Excel 2000 mediante el menú Herramientas--Macro--Editor de Visual Basic y a continuación ejecutando en este editor el comando Insertar--Módulo.
Escribimos el código siguiente en el módulo:
Declare Sub Recibo Lib "dlltcast.dll" (cifra As Long, ByVal texto As String)
Function letras(minumero)
Dim texto As String * 255
Dim cifra As Long
texto = String(255, 0)
cifra = CLng(minumero)
Call Recibo(cifra, texto)
letras = texto
End Function
Guardamos el libro de trabajo y cerramos el editor de Visual Basic. Probamos a utilizar la función en la hoja de cálculo en la que hemos definido la función escribiendo =letra(Número). Siendo número un valor numérico o una referencia de celda que contenga un número. Por ejemplo: =letra(56789) o =letra(B2).
En el archivo de Word E10467.DOC podemos ver la forma de utilizar la función desde cualquier hoja de cálculo sin tener que definirla nuevamente.
Esto te será de utilidad, aún si no llena tus espectativas; pero como leíste usando este método puedes crear tu propia librería y darla de alta para usarla en Excel.
Si acaso no hallas el archivo en esa página prueba usando en el buscador el nombre del archivo e instálalo. Si aun así no lo hallas mi dirección es: [email protected]; [email protected]
Muchas gracias ya he probado, pero el problema es que solo devuelve números enteros no con decimales. ¿Habría alguna forma de solucionarlo?
En estos días estoy trabajando en un programa que resuelva ese problema, ya que yo también necesito que Excel haga esa operación. Como comprobaste la solución que te dan en Microsoft, realmente no resuelve todas las necesidades; pero haciendo nuestra propia librería de funciones se puede resolver. Hay que crear una librería del tipo DLL de las que usa Windows. Deberá recibir un número con decimales y devolverlo en su correspondiente expresión en texto con todo y parte fraccionaria. Este programa lo hice en QBasic 7.1 y, funciona muy bien: Recibe datos de la línea de comandos de MS-DOS y también, se puede activar el programa y en la pantalla que aparece darle los datos y devuelve el número en su expresión en texto; pero esto no funciona para Excel, o al menos yo no se como hacerlo. Lo que si sé es que creando una función como la que te recomendé si se puede hacer. Voy a usar la misma técnica que recomienda el programador pero con mi propia DLL.
Trata de hacer una tu mismo. Sin embargo, cuando termine la que estoy diseñando te enviaré una copia.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas