Partager via


xlAsyncReturn (traduction automatique)

Dernière modification : mercredi 13 janvier 2010

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.

Utilisée pour retourner le résultat d’une fonction asynchrone définie par l’utilisateur.

Excel12(xlAsyncReturn, LPXLOPER12 pxRes, 2, LPXLOPER12 pxAsyncHandle, LPXLOPER12 pxFunctionResult);

Paramètres

pxAsyncHandle (xltypeBigData)

La poignée asynchrone de la FDU à laquelle le résultat est retourné.

pxFunctionResult

La valeur de retour de la FDU.

Valeur de propriété/Valeur renvoyée

En cas de réussite, cette propriété renvoie le TRUE (xltypeBool). En cas d'échec, renvoie FALSE.

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

xlAsyncReturn est le seul rappel que permet de Excel sur des threads non calcul lors d'un recalcul. La partie asynchrone d'une fichier UDF asynchrone n'effectuez des rappels autres que xlAsyncReturn. La XLL doit libérer la mémoire allouée pour contenir la valeur de retour.

Les paramètres pxAsyncHandle et pxFunctionResult peuvent également être de type xltypeMulti lorsqu'elle est utilisée pour retourner un tableau de handles et les valeurs correspondantes dans un seul rappel. Lorsque vous utilisez un seul rappel, transmettez un LPXLOPER12 qui pointe vers les structures XLOPER12 qui contiennent un tableaux unidimensionnels qui contiennent les handles asynchrones et renvoient des valeurs. Ces tableaux doivent être dans le même ordre pour qu'Excel puisse correctement correspond à un handle asynchrone avec sa valeur correspondante.

L'exemple suivant montre comment vous pouvez faire appel à l'aide de xlAsyncReturn un lot.

int batchSize = 10;
    LPXLOPER12 pHandles = new XLOPER12[batchSize];
    LPXLOPER12 pValues = new XLOPER12[batchSize];

    /*Add code to fill in LPXLOPER12 arrays (pHandles and pValues)
    with the XOPER12 structures that contain the asynchronous handles
    and values, in respective order*/

    //Create an XLOPER12 of type xltypeMulti, and fill the Handle array
    XLOPER12 handleArray;
    handleArray.xltype = xltypeMulti;
    handleArray.val.array.rows = 1;
    handleArray.val.array.columns = (COL)batchSize;
    handleArray.val.array.lparray = pHandles;
    
    //Create an XLOPER12 if type xltypeMulti, and fill the Values array
    XLOPER12 valueArray;
    valueArray.xltype = xltypeMulti;
    valueArray.val.array.rows = 1;
    valueArray.val.array.columns = (COL)batchSize;
    valueArray.val.array.lparray = pValues;

    //Make the callback with the return value
    int ret = Excel12(xlAsyncReturn, 0, 2, &handleArray, &valueArray);

    //Add code to free the allocated memory here (pHandles, pValues, valueArray, handleArray)

    return ret;

Voir aussi

Concepts

Fonctions asynchrones définies par l’utilisateur (traduction automatique)