Partager via


xlStack (traduction automatique)

Dernière modification : mercredi 18 mars 2009

S’applique à : Excel 2010 | Office 2010 | VBA | Visual Studio

Important

Cet article a été traduit automatiquement, voir l’avertissement. Vous pouvez consulter la version en anglais de cet article ici.

Contrôle la quantité d’espace restant dans la pile.

Excel12(xlStack, LPXLOPER12 pxRes, 0);

Paramètres

Cette fonction ne prend aucun argument.

Valeur de propriété/Valeur renvoyée

Renvoie le nombre d'octets (xltypeInt) restant sur la pile.

Notes

Avertissement traduction automatique : cet article a été traduit par un ordinateur, sans intervention humaine. Microsoft propose cette traduction automatique pour offrir aux personnes ne maîtrisant pas l’anglais l’accès au contenu relatif aux produits, services et technologies Microsoft. Comme cet article a été traduit automatiquement, il risque de contenir des erreurs de grammaire, de syntaxe ou de terminologie.

Remarques

La quantité d'espace de pile disponible des versions récentes dépassements de capacité de l'entier signé 16 bits de la XLOPER. Cela signifie que xlStack peut renvoyer une valeur entre-32767 et et 32768 lorsqu'elle est appelée à l'aide de XLOPERs et Excel4 ou Excel4v. Pour obtenir la valeur correcte dans ce cas, vous devez effectuer un cast de la valeur retournée dans un type unsigned short.

À partir de Excel 2007, vous devez appeler cette fonction à l'aide de XLOPER12s et Excel12 ou Excel12v, auquel cas la valeur retournée est la quantité d'espace de pile ou de 64 Ko, selon ce qui est le plus petit.

Excel dispose d'une quantité limitée d'espace dans la pile, et vous devez prendre soin ne pas à une saturation de cet espace. Ne placez jamais les structures de données de très grande taille sur la pile et rendre statiques les variables autant que possible. Évitez d'appeler des fonctions de manière récursive, car qui remplira rapidement haut de la pile.

Si vous pensez que vous êtes saturer la pile, appelez cette fonction fréquemment pour voir combien d'espace pile est laissé.

Exemple

Le premier exemple affiche un message d'alerte contenant la quantité d'espace pile et est contenu dans \SAMPLES\EXAMPLE\EXAMPLE.C. Le deuxième exemple effectue la même opération, travailler avec XLOPERs et n'est pas contenu dans l'exemple de code SDK.

short WINAPI xlStackExample(void)
{
   XLOPER12 xRes;

   Excel12(xlStack, &xRes, 0);
   Excel12(xlcAlert, 0, 1, (LPXLOPER12)&xRes);
   return 1;
} 

short int WINAPI xlStackExample_XLOPER(void)
{
    XLOPER xRes;

    Excel4(xlStack, (LPXLOPER)&xRes, 0);
    xRes.xltype = xltypeNum; // Change the type to double
    // Cast to an unsigned short to get rid of the overflow problem
    xRes.val.num = (double)(unsigned short) xRes.val.w;
    Excel4(xlcAlert, 0, 1, (LPXLOPER)& xRes);
    return 1;
}

Voir aussi

Concepts

Fonctions de l’API C appelables uniquement depuis une DLL ou XLL (traduction automatique)