Partager via


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 : { "requiresAddress": true }

Si le fichier JSON de métadonnées est généré à partir de commentaires JSDoc, incluez la balise @requiresAddress.

functionName

Nom de cette fonction.

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 .

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.

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

[ Ensemble d’API : CustomFunctionsRuntime 1.1 ]

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;
}