
Me preguntaba si hay algún lugar en Excel o en línea que pueda usar para ver cómo funcionan las funciones en Excel.
La idea es que estoy empezando a aprender cómo crear UDF y hacer varias cosas en VBA, y pensé que si pudiera ver cómo se ejecuta realmente Excel, Sum()
por ejemplo, podría aprender cómo hacer que mi código sea más estricto, ocupe menos espacio. etc.
Básicamente, ¿dónde está el repositorio de cómo funcionan las funciones integradas de Excel? ¿Está disponible?
Editar: entiendo que las fórmulas pueden estar escritas en un formato que no sea VBA. Está bien, solo tengo curiosidad por saber si hay alguna manera de verlos, sea cual sea el idioma en el que estén escritos.
Edit2: La idea general es que estoy aprendiendo C++/VBA/C# y me gustaría ver funciones "oficiales" solo para aprender cómo funcionan y ver si hay alguna forma de acelerar el código. ¡Las funciones de OpenOffice también son buenas!
Respuesta1
Microsoft Excel es un producto de código cerrado,
pero como usted indicó, el código fuente alternativo a Excel también será suficiente.
Puedes examinar elcódigo fuentedeCalc de OpenOfficeque se parece mucho a Microsoft Excel (ver capturas de pantalla).
No es necesario instalar el producto. Sobre elpagina de descarga, céntrese en la sección etiquetadaFuentey toma el archivo concremalleraextensión.
Dentro del archivo, busque el archivo aoo-4.1.2\main\sc\source\core\tool\interpr4.cxx
y alrededor de la línea 3500 puede encontrar case
una declaración larga que muestra llamadas a funciones internas para funciones integradas de hoja de cálculo. Este es su punto de partida.
Luego puede buscar archivos fuente para la implementación de estas funciones.
¡Buena suerte!
Respuesta2
En cambio, le insto a que comprenda elLógica de las funciones.Ya sabes lo que Sum
es, debería ser fácil de replicar para ti. Las cosas que no sabes, como vlookup
o stdev
tener algún tipo delógica- ya sea puramente matemático u operativo (como transpose
). Aprendercómoesos funcionan y luego diseñan su código en torno a la lógica.