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í:

[code language=”cs”]
<![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;
}
}
]]>
[/code]

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.

QuipuConverter y ExcelDna

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *