QuipuConverter y ExcelDna

Anteriormente se mostró el funcionamiento de QuipuConverter.XLL una librería dinámica realizada en lenguaje C++ para convertir números a letras, la librería permitía realizar la conversión a través de funciones de Excel de forma sencilla, sin embargo no permitía al usuario crear su propia función (en su moneda), para usarla directamente. Es por ello que decidí crear una función que permitierá ello con ayuda de Excel-Dna.

Excel-Dna es un proyecto libre que permite que funciones creadas en .Net (C# por ejemplo) puedan usarse como funciones nativas de Excel. Excel-Dna permite el uso de las funciones creadas en C# mediante un complemento XLL, un archivo .dna del mismo nombre y el uso de la librería ‘ExcelDna.Integration.dll‘. La declaración de las funciones de C# pueden ser hechas en un archivo con extensión .dna o directamente en una librería compilada de C#.

Para este proyecto se creó una librería en C# que referencia a ‘ExcelDna.Integration.dll’ para que sus funciones se puedan usar directamente en Excel, estas funciones son: EnteroToSpanish y DecimalToSpanish. Estas funciones pueden usarse de manera similar a las desarrolladas en QuipuConverter.XLL, pero también se pueden usar dentro del archivo .dna para crear una función personalizada y usarla de forma directa en Excel.

EnteroToSpanish: Convierte la parte entera de un número a texto
DecimalToSpanish: Convierte la parte decimal de un número a texto o formato 00/100

El archivo .dna para usar un formato para convertir un número a nuevos soles sería así:

<![CDATA[
using ExcelDna.Integration;
using QuipuDNA;
public class QuipuConverter
{
[ExcelFunction(Description="Convierte el numero a su expresion en moneda nuevos soles", Category="QuipuDNA")] public static string NuevosSoles(double val)
{
string ans = "";
ans += Quipu.EnteroToSpanish(val,0);
ans += " y ";
ans += Quipu.DecimalToSpanish(val,1);
ans += " Nuevos Soles";
return ans;
}
}
]]>

De forma similar puedes crear tus propios formatos para conversión a moneda. Aquí puedes descargar la librería QuipuDNA.dll y las librerías de Excel-Dna, además se requerirá que tengas instalado como mínimo .Net Framework 4.0.

Suerte.

Posted in apps, excel, excel Tagged with: ,

Facebook comments:

Leave a Reply

Your email address will not be published. Required fields are marked *

*

Make a computation for validation *
Time limit is exhausted. Please reload CAPTCHA.

Traducir

Read previous post:
Sumar unicamente celdas en negrita

En este post mostraré cómo sumar aquellas celdas que se encuentren de color negrita (Bold) mediante el uso de una...

Close