Prise en main du développement des fonctions personnalisées Excel

Avec les fonctions personnalisées, les développeurs peuvent ajouter de nouvelles fonctions dans Excel en les définissant dans JavaScript ou TypeScript dans le cadre d’un complément. Les utilisateurs d’Excel peuvent accéder aux fonctions personnalisées comme ils le feraient pour n’importe quelle fonction native d’Excel, telle que SUM().

Conditions préalables

  • Node.js (la dernière version LTS active). Visitez le siteNode.js pour télécharger et installer la version adaptée à votre système d’exploitation.

  • La dernière version deYeoman et du Générateur Yeoman Générateur de compléments Office. Pour installer ces outils globalement, exécutez la commande suivante via l’invite de commande.

    npm install -g yo generator-office
    

    Remarque

    Même si vous avez précédemment installé le générateur Yeoman, nous vous recommandons de mettre à jour votre package vers la dernière version de npm.

  • Office connecté à un abonnement Microsoft 365 (y compris Office on the web).

    Remarque

    Si vous n’avez pas encore Office, vous pouvez peut-être bénéficier d’un abonnement développeur Microsoft 365 E5 via le programme Microsoft 365 pour les développeurs. Pour plus d’informations, consultez le FAQ. Vous pouvez également vous inscrire à un essai gratuit d’un mois ou acheter un plan Microsoft 365.

Créer votre premier projet de fonctions personnalisées

Pour commencer, vous utiliserez le Yeoman Générateur pour créer le projet de fonctions personnalisées. Cette option définit votre projet, avec la structure de dossiers correct, les fichiers source et les dépendances pour commencer le codage de vos fonctions personnalisées.

  1. Exécutez la commande suivante pour créer un projet de complément à l’aide du générateur Yeoman. Un dossier contenant le projet sera ajouté au répertoire actuel.

    yo office
    

    Remarque

    Lorsque vous exécutez la commande yo office, il est possible que vous receviez des messages d’invite sur les règles de collecte de données de Yeoman et les outils CLI de complément Office. Utilisez les informations fournies pour répondre aux invites comme vous l’entendez.

    Lorsque vous y êtes invité, fournissez les informations suivantes pour créer votre projet de complément.

    • Choisissez un type de projet :Excel Custom Functions using a Shared Runtime
    • Choisissez un type de script :JavaScript
    • Comment voulez-vous nommer votre complément ?My custom functions add-in

    L’interface de ligne de commande du générateur de compléments Yeoman Office invite à des projets de fonctions personnalisées.

    Le générateur crée le projet et installe les composants Node.js de la prise en charge.

  2. Le générateur Yeoman vous donne des instructions dans votre ligne de commande sur le projet, mais vous devez continuer à suivre les instructions de cet article. Accédez au dossier racine du projet.

    cd "My custom functions add-in"
    
  3. Créez le projet.

    npm run build
    
  4. Démarrez le serveur web local qui est exécuté dans Node.js. Vous pouvez tester le complément de fonction personnalisée dans Excel. Vous serez peut-être invité à ouvrir le volet Office du complément, même si ce n’est pas obligatoire. Vous pouvez continuer à exécuter vos fonctions personnalisées sans ouvrir le volet Office de votre complément.

Pour tester votre complément dans Excel sur le web, exécutez la commande suivante. Lorsque vous exécutez cette commande, le serveur web local démarre. Remplacez « {url} » par l’URL d’un document Excel sur votre OneDrive ou une bibliothèque SharePoint sur laquelle vous disposez d’autorisations.

Remarque

Si vous développez sur un Mac, placez les guillemets {url} simples. Ne faites pas cela sous Windows.

npm run start -- web --document {url}

Les éléments suivants sont des exemples.

  • npm run start -- web --document https://contoso.sharepoint.com/:t:/g/EZGxP7ksiE5DuxvY638G798BpuhwluxCMfF1WZQj3VYhYQ?e=F4QM1R
  • npm run start -- web --document https://1drv.ms/x/s!jkcH7spkM4EGgcZUgqthk4IK3NOypVw?e=Z6G1qp
  • npm run start -- web --document https://contoso-my.sharepoint-df.com/:t:/p/user/EQda453DNTpFnl1bFPhOVR0BwlrzetbXvnaRYii2lDr_oQ?e=RSccmNP

Si votre complément n’effectue pas de chargement indépendant dans le document, chargez-le manuellement en suivant les instructions figurant dans Charger manuellement une version test des compléments vers Office sur le Web.

Remarque

  • Les compléments Office doivent utiliser le protocole HTTPS, et non HTTP, même pendant le développement. Si vous êtes invité à installer un certificat après avoir exécuté l’une des commandes suivantes, acceptez l’invite pour installer le certificat fourni par le générateur Yeoman. Il se peut également que vous deviez exécuter votre invite de commande ou votre terminal en tant qu'administrateur pour que les modifications soient effectuées.

  • S’il s’agit de votre premier développement d’un complément Office sur votre ordinateur, vous pouvez être invité dans la ligne de commande à accorder à l’affichage web Microsoft Edge une exemption de bouclage (« Autoriser le bouclage localhost pour l’affichage web Microsoft Edge ? »). Lorsque vous y êtes invité, entrez Y pour autoriser l’exemption. Notez que vous aurez besoin de privilèges d’administrateur pour autoriser l’exemption. Une fois autorisé, vous ne devez pas être invité à demander une exemption lorsque vous chargerez une version test de compléments Office à l’avenir (sauf si vous supprimez l’exemption de votre ordinateur). Pour en savoir plus, voir « Impossible d’ouvrir ce complément à partir de localhost » lors du chargement d’un complément Office ou de l’utilisation de Fiddler.

    Invite dans la ligne de commande pour autoriser Microsoft Edge WebView une exemption de bouclage.

  • Lorsque vous utilisez pour la première fois le générateur Yeoman pour développer un complément Office, votre navigateur par défaut ouvre une fenêtre dans laquelle vous êtes invité à vous connecter à votre compte Microsoft 365. Si aucune fenêtre de connexion n’apparaît et que vous rencontrez une erreur de chargement indépendant ou de délai d’expiration de la connexion, exécutez atk auth login m365.

Essayer une fonction personnalisée prédéfinie

Le projet de fonctions personnalisées que vous avez crées en utilisant le générateur Yeoman contient certaines fonctions personnalisées prédéfinies, définies dans le fichier./src/functions/functions.js. Le fichier./manifest.xmldans le répertoire racine du projet indique que toutes les fonctions personnalisées appartiennent à l’ CONTOSO espace de noms.

Dans votre classeur Excel, essayez la fonction personnalisée ADD en effectuant les étapes suivantes.

  1. Sélectionner une cellule, puis taper =CONTOSO Notez que le menu de saisie semi-automatique affiche la liste de toutes les fonctions dans l’espace de noms CONTOSO.

  2. Exécutez la fonction, en utilisant des CONTOSO.ADD nombres 10 et 200 en tant que paramètres d’entrée, en tapant la valeur =CONTOSO.ADD(10,200) dans la cellule et en appuyant sur Entrée.

Le ADD fonction personnalisée calcule la somme des deux nombres que vous avez spécifiés comme paramètres d’entrée. La saisie =CONTOSO.ADD(10,200) devrait produire le résultat 210 dans la cellule après avoir appuyé sur Entrée.

Si l’espace de noms CONTOSO n’est pas disponible dans le menu de saisie semi-automatique, procédez comme suit pour inscrire le complément dans Excel.

  1. SélectionnezComplémentsdomestiques>, puis Autres paramètres.

  2. Dans la boîte de dialogue Compléments Office , sélectionnez Charger mon complément.

  3. Sélectionnez Parcourir... et accédez au répertoire racine du projet créé par le Générateur de Yo Office.

  4. Sélectionnez le fichiermanifest.xml puis sélectionnezOuvrir, puis sélectionnez Télécharger.

  5. Essayez la nouvelle fonction. Dans la cellule B1, tapez le texte =CONTOSO. GETSTARCOUNT(« OfficeDev », « Excel-Custom-Functions ») et appuyez sur Entrée. Le résultat dans la cellule B1 doit correspondre au nombre d’étoiles actuellement attribuées au référentiel GitHub Excel-Custom-Functions.

Lorsque vous souhaitez arrêter le serveur web local et désinstaller le complément, suivez les instructions applicables :

Étapes suivantes

Félicitations, vous avez créé une fonction personnalisée dans un complément Excel ! Ensuite, créez un complément plus complexe avec la fonctionnalité de diffusion de données en continu. Le lien suivant vous guide tout au long des étapes suivantes dans le complément Excel avec le didacticiel de fonctions personnalisées.

Résolution des problèmes

  • L’étape automatique npm install que Yo Office effectue peut échouer. Si vous voyez des erreurs lors de la tentative d’exécution npm start, accédez au dossier de projet nouvellement créé dans une invite de commande et exécutez npm installmanuellement . Pour plus d’informations sur Yo Office, voir Créer des projets de complément Office à l’aide du générateur Yeoman.

  • Vous pouvez voir des avertissements générés lors de l’exécution npm install pour le générateur Yeoman ou le projet. Dans la plupart des cas, vous pouvez ignorer ces avertissements en toute sécurité. Les avertissements de sécurité ou d’audit nécessitent une évaluation distincte ; Résolvez les vulnérabilités dans les dépendances d’exécution, ou les dépendances dont vous ne pouvez pas déterminer l’origine, avant le déploiement en production. Parfois, les dépendances deviennent obsolètes et leurs remplacements ne sont pas pris en charge par les autres packages dont dépend le projet. Pour passer en revue les mises à jour de dépendance disponibles, utilisez l’outil npm-check-updates .

    • Dans l’invite de commande, dans le répertoire du projet racine, exécutez npm i -g npm-check-updates. Cela installe l’outil globalement.
    • Exécuter ncu pour signaler les mises à jour disponibles sans modifier package.json.
    • Vérifiez la compatibilité des versions proposées et mettez à jour uniquement les plages de dépendances appropriées dans package.json, puis exécutez .npm install Notez que ncu -u réécrit les plages de dépendances et peut inclure la rupture des mises à niveau des versions majeures.

    Pour plus d’informations sur les avertissements lors de l’exécution de , consultez Avertissements et dépendances dans le monde Node.js et npm.npm install

  • Si vous ne voyez pas le bouton Complément sur le ruban (par exemple, Afficher le volet Office), sélectionnez le bouton Compléments dans l’onglet du ruban Accueil , puis choisissez le complément de test.

  • Vous pouvez rencontrer des problèmes si vous exécutez le démarrage rapide plusieurs fois. Votre complément retourne une erreur lors de son chargement si le cache d'Office contient déjà une instance d'une fonction qui porte le même nom. Vous pouvez éviter cela en vidant le cache Office avant de le lancer npm run start et en vous assurant de l’exécuter npm stop avant de redémarrer le complément.

    Message d’erreur Excel intitulé « Erreur lors de l’installation des fonctions ». Il contient le texte « Ce complément n’a pas été installé car une fonction personnalisée du même nom existe déjà ».

Voir aussi