Utiliser des fonctions de classeur dans Excel

Vous pouvez utiliser les fonctions de classeur dans Excel avec Microsoft Graph pour appeler n’importe quelle fonction de classeur à l’aide de la syntaxe suivante : POST /me/drive/root/workbook/functions/{function-name}. Vous fournissez les arguments de fonction dans le corps à l’aide d’un objet JSON. L’élément value résultant de la fonction et les chaînes error sont renvoyés dans l’objet de résultat de la fonction. La valeur error « null » indique que la fonction a été exécutée.

Pour obtenir la liste complète des fonctions prises en charge, consultez La classe Excel.Functions. Reportez-vous à la signature de fonction pour les types de données et les noms de paramètres spécifiques.

Importante

  • Le paramètre d’entrée de plage est fourni à l’aide d’un objet de plage au lieu de la chaîne d’adresse de plage.
  • Le paramètre d’index est indexé sur 1 contrairement à l’index 0 utilisé dans la plupart des API.

Exemple : vlookup

Dans une feuille de calcul Excel, la fonction vlookup accepte les arguments suivants :

  • lookup_value (obligatoire) : valeur que vous souhaitez rechercher.

  • table_array (obligatoire) : plage de cellules où se trouve la valeur de recherche. N’oubliez pas que la valeur de recherche doit toujours se trouver dans la première colonne de la plage pour que RECHERCHEV fonctionne correctement. Par exemple, si votre valeur de recherche se trouve dans la cellule C2, votre plage doit commencer par C.

  • col_index_num (obligatoire) : numéro de colonne dans la plage qui contient la valeur de retour. Par exemple, si vous spécifiez la plage B2:D11, vous devez compter B comme la première colonne, C comme la deuxième, et ainsi de suite.

  • range_lookup (facultatif) : valeur logique qui spécifie si vous souhaitez que RECHERCHEV trouve une correspondance approximative ou exacte. Spécifiez TRUE pour obtenir une correspondance approximative ou FALSE pour obtenir une correspondance exacte par rapport à la valeur renvoyée. Si vous ne spécifiez rien, la valeur par défaut sera toujours TRUE ou une correspondance approximative.

Dans une cellule, la fonction vlookup se présente comme suit :

=VLOOKUP(valeur de recherche, plage contenant la valeur de recherche, numéro de colonne dans la plage contenant la valeur de retour, spécifiez éventuellement TRUE pour la correspondance approximative ou FALSE pour une correspondance exacte)

Pour plus d’informations, consultez la documentation de la fonction Excel rechercheV.

Demande

L’exemple suivant indique comment appeler la fonction vlookup et comment transmettre ces paramètres avec l’API REST Excel.

POST https://graph.microsoft.com/beta/me/drive/root:/book1.xlsx:/workbook/functions/vlookup
content-type: Application/Json
authorization: Bearer {access-token}
workbook-session-id: {session-id}

{
    "lookupValue": "Temperature",
    "tableArray": { "Address": "Sheet1!E1:G5" },
    "colIndexNum": 2,
    "rangeLookup": false
}

Réponse

HTTP code: 200 OK
content-type: application/json;odata.metadata

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#workbookFunctionResult",
    "@odata.type": "#microsoft.graph.workbookFunctionResult",
    "@odata.id": "/users('f6d92604-4b76-4b70-9a4c-93dfbcc054d5')/drive/root/workbook/functions/vlookup()",
    "error": null,
    "value": "28.3"
}

Exemple : median

Dans une feuille de calcul Excel, la fonction median accepte une matrice d’une ou plusieurs plages d’entrées.

Dans une cellule, la fonction median se présente comme dans cet exemple :

=MEDIAN(A2:A6)

Pour plus d’informations, consultez la documentation relative à la fonction MEDIAN Excel.

Demande

L’exemple suivant indique comment appeler la fonction median, ainsi qu’une ou plusieurs plages d’entrées avec l’API REST Excel.

POST https://graph.microsoft.com/beta/me/drive/root:/book1.xlsx:/workbook/functions/median
content-type: Application/Json
authorization: Bearer {access-token}
workbook-session-id: {session-id}

{
"values" :  [
        { "address": "Sheet2!A1:A5" },
        { "address": "Sheet2!B1:B5" },
      ]
}

Réponse

HTTP code: 200 OK
content-type: application/json;odata.metadata

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#workbookFunctionResult",
  "@odata.type": "#microsoft.graph.workbookFunctionResult",
  "@odata.id": "/users('2abcad6a-2fca-4b6e-9577-e358a757d77d')/drive/root/workbook/functions/median()",
  "error": null,
  "value": 30
}