Partager via


Excel4v/Excel12v

S’applique à: Excel 2013 | Office 2013 | Visual Studio

Appelle une fonction de feuille de calcul Microsoft Excel interne, une fonction ou une commande de feuille de macro, ou une fonction ou une commande spéciale XLL uniquement, à partir d’une dll, d’une xll ou d’une ressource de code.

Toutes les versions récentes d’Excel prennent en charge Excel4v. À compter d’Excel 2007, Excel12v est pris en charge.

Ces fonctions peuvent être appelées uniquement lorsqu’Excel a passé le contrôle à la DLL ou XLL. Ils peuvent également être appelés lorsqu’Excel a transmis le contrôle indirectement via un appel à Visual Basic pour Applications (VBA). Ils ne peuvent pas être appelés à un autre moment. Par exemple, ils ne peuvent pas être appelés pendant les appels à la fonction DllMain ou à d’autres moments où le système d’exploitation a appelé la DLL, ou à partir d’un thread créé par la DLL.

Les fonctions Excel4 et Excel12 acceptent leurs arguments en tant que liste de longueur variable sur la pile, tandis que les fonctions Excel4v et Excel12v acceptent leurs arguments sous forme de tableau. À tous les autres égards, Excel4 se comporte de la même façon qu’Excel4v et Excel12 se comporte de la même façon qu’Excel12v.

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

Paramètres

iFunction (int)

Nombre qui indique la commande, la fonction ou la fonction spéciale que vous souhaitez appeler. Pour obtenir la liste des valeurs iFunction valides, consultez la section Notes suivante.

pxRes (LPXLOPER ou LPXLOPER12)

Pointeur vers un XLOPER (dans le cas d’Excel4v) ou un XLOPER12 (dans le cas d’Excel12v) qui contiendra le résultat de la fonction évaluée.

iCount (int)

Nombre d’arguments suivants qui seront passés à la fonction. Dans les versions d’Excel jusqu’à 2003, il peut s’agir de n’importe quel nombre compris entre 0 et 30. À compter d’Excel 2007, il peut s’agir de n’importe quel nombre compris entre 0 et 255.

rgx (LPXLOPER [] ou LPXLOPER12 [])

Tableau qui contient les arguments de la fonction. Tous les arguments du tableau doivent être des pointeurs vers DES valeurs XLOPER ou XLOPER12 .

Valeur renvoyée

Ces fonctions retournent les mêmes valeurs qu’Excel4 et Excel12.

Remarques

Ces fonctions sont utiles lorsque le nombre d’arguments passés à l’opérateur est variable. Par exemple, Excel4v et Excel12v sont utiles lorsque vous inscrivez des fonctions à l’aide de xlfRegister , où le nombre total d’arguments dépend du nombre d’arguments pris par la fonction en cours d’inscription. Excel4v et Excel12v sont également utiles lorsque vous écrivez une fonction wrapper pour Excel4 ou Excel12. Dans ce cas, vous devez convertir une liste d’arguments variables, comme cela est normalement fourni à Excel4 ou Excel12, en un seul argument de tableau de taille variable à rappeler dans Excel à l’aide d’Excel4v ou d’Excel12v.

Exemple

Pour obtenir des exemples de code, consultez le code des fonctions Excel et Excel12f dans le Kit de développement logiciel (SDK) Excel 2010 XLL, à l’emplacement suivant où vous avez installé le SDK :

Samples\Framewrk\Framewrk.c

Voir aussi

Excel4/Excel12