CustomFunctions.Invocation interface
Fournit des informations sur l’appel d’une fonction personnalisée.
Remarques
Exemples
/**
* Return the address of the cell that invoked the custom function.
* @customfunction
* @param {number} first First parameter.
* @param {number} second Second parameter.
* @param {CustomFunctions.Invocation} invocation Invocation object.
* @requiresAddress
*/
function getAddress(first, second, invocation) {
const address = invocation.address;
return address;
}
Propriétés
| address | Adresse de cellule où la fonction est appelée, si elle est demandée, sinon non définie. Pour demander l’adresse de la fonction, dans le fichier JSON de métadonnées, les options de fonction doivent spécifier : Si le fichier JSON de métadonnées est généré à partir de commentaires JSDoc, incluez la balise |
| function |
Nom de cette fonction. |
| is |
Indique si la fonction est appelée dans le cadre de l’aperçu de la valeur de formule.
|
| parameter |
Les adresses de plage où se trouvent les paramètres de fonction, si demandé, sinon non définis. Pour demander les adresses de paramètre pour la fonction, dans le fichier JSON de métadonnées, les options de fonction doivent spécifier : Si le fichier JSON de métadonnées est généré à partir de commentaires JSDoc, incluez la balise |
Détails de la propriété
address
Adresse de cellule où la fonction est appelée, si elle est demandée, sinon non définie.
Pour demander l’adresse de la fonction, dans le fichier JSON de métadonnées, les options de fonction doivent spécifier : { "requiresAddress": true }
Si le fichier JSON de métadonnées est généré à partir de commentaires JSDoc, incluez la balise @requiresAddress.
address?: string;
Valeur de propriété
string
Remarques
[ Ensemble d’API : CustomFunctionsRuntime 1.1 ]
Exemples
/**
* Return the address of the cell that invoked the custom function.
* @customfunction
* @param {number} first First parameter.
* @param {number} second Second parameter.
* @param {CustomFunctions.Invocation} invocation Invocation object.
* @requiresAddress
*/
function getAddress(first, second, invocation) {
const address = invocation.address;
return address;
}
functionName
Nom de cette fonction.
functionName?: string;
Valeur de propriété
string
Remarques
isInValuePreview
Indique si la fonction est appelée dans le cadre de l’aperçu de la valeur de formule.
isInValuePreview est en lecture seule et ne peut pas être défini par un complément de fonctions personnalisées. Cette valeur est true si la fonction est appelée pour afficher un aperçu de la valeur de formule ; sinon, il s’agit falsede .
isInValuePreview?: string;
Valeur de propriété
string
Remarques
[ Ensemble d’API : CustomFunctionsRuntime 1.5 ]
Exemples
/**
* Get the listing price for a house on the market for the given address.
* @customfunction
* @param address The address of the house.
* @param invocation Custom function handler.
* @returns The price of the house at the address.
*/
function getHousePrice(address: string, invocation: CustomFunctions.Invocation): number {
// Check if this call is for formula value preview mode.
if (invocation.isInValuePreview) {
// Avoid long-running expensive service calls.
// Return a usable but fake number.
return 450000;
} else {
// Make the actual service calls in this block.
const price = callHouseServiceAPI(address);
return price;
}
}
parameterAddresses
Les adresses de plage où se trouvent les paramètres de fonction, si demandé, sinon non définis.
Pour demander les adresses de paramètre pour la fonction, dans le fichier JSON de métadonnées, les options de fonction doivent spécifier : { "requiresParameterAddresses": true }
Si le fichier JSON de métadonnées est généré à partir de commentaires JSDoc, incluez la balise @requiresParameterAddresses.
parameterAddresses?: string[];
Valeur de propriété
string[]
Remarques
[ Ensemble d’API : CustomFunctionsRuntime 1.3 ]
Exemples
/**
* Return the addresses of three parameters.
* @customfunction
* @param {string} firstParameter First parameter.
* @param {string} secondParameter Second parameter.
* @param {string} thirdParameter Third parameter.
* @param {CustomFunctions.Invocation} invocation Invocation object.
* @returns {string[][]} The addresses of the parameters, as a 2-dimensional array.
* @requiresParameterAddresses
*/
function getParameterAddresses(firstParameter, secondParameter, thirdParameter, invocation) {
const addresses = [
[invocation.parameterAddresses[0]],
[invocation.parameterAddresses[1]],
[invocation.parameterAddresses[2]]
];
return addresses;
}