Compartir a través de


Excel4v/Excel12v

Hace referencia a: Excel 2013 | Office 2013 | Visual Studio

Llama a una función de hoja de cálculo interna de Microsoft Excel, a una función o comando de hoja de macros, o a una función o comando especial de solo XLL, desde un recurso de código, XLL o DLL.

Todas las versiones recientes de Excel admiten Excel4v. A partir de Excel 2007, se admite Excel12v .

Estas funciones solo se pueden llamar cuando Excel ha pasado el control al archivo DLL o XLL. También se pueden llamar cuando Excel ha pasado el control indirectamente a través de una llamada a Visual Basic para Aplicaciones (VBA). No se les puede llamar en ningún otro momento. Por ejemplo, no se les puede llamar durante las llamadas a la función DllMain u otras veces cuando el sistema operativo ha llamado al archivo DLL o desde un subproceso creado por el archivo DLL.

Las funciones Excel4 y Excel12 aceptan sus argumentos como una lista de longitud variable en la pila, mientras que las funciones Excel4v y Excel12v aceptan sus argumentos como una matriz. En todos los demás aspectos, Excel4 se comporta igual que Excel4v y Excel12 se comporta igual que Excel12v.

int _cdecl Excel4v(int iFunction, LPXLOPER pxRes, int iCount, LPXLOPER rgx[]);
int _cdecl Excel12v(int iFunction, LPXLOPER12 pxRes, int iCount, LPXLOPER12 rgx[]);

Parameters

iFunction (int)

Número que indica el comando, la función o la función especial a la que desea llamar. Para obtener una lista de valores iFunction válidos, vea la siguiente sección Comentarios.

pxRes (LPXLOPER o LPXLOPER12)

Puntero a un XLOPER (en el caso de Excel4v) o un XLOPER12 (en el caso de Excel12v) que contendrá el resultado de la función evaluada.

iCount (int)

Número de argumentos posteriores que se pasarán a la función. En las versiones de Excel hasta 2003, puede ser cualquier número de 0 a 30. A partir de Excel 2007, puede ser cualquier número del 0 al 255.

rgx (LPXLOPER [] o LPXLOPER12 [])

Matriz que contiene los argumentos de la función. Todos los argumentos de la matriz deben ser punteros a valores XLOPER o XLOPER12 .

Valor devuelto

Estas funciones devuelven los mismos valores que Excel4 y Excel12.

Comentarios

Estas funciones son útiles cuando el número de argumentos pasados al operador es variable. Por ejemplo, Excel4v y Excel12v son útiles cuando se registran funciones mediante xlfRegister , donde el número de argumentos totales depende del número de argumentos tomados por la función que se está registrando. Excel4v y Excel12v también son útiles al escribir una función contenedora para Excel4 o Excel12. En estos casos, debe convertir una lista de argumentos de variable, como normalmente se proporcionaría a Excel4 o Excel12, en un único argumento de matriz de tamaño variable para volver a llamar a Excel mediante Excel4v o Excel12v.

Ejemplo

Para ver ejemplos de código, vea el código de las funciones de Excel y Excel12f en el SDK de XLL de Excel 2010, en la siguiente ubicación donde instaló el SDK:

Samples\Framewrk\Framewrk.c

Vea también

Excel4/Excel12