ConnXL Docs

Exploiter

Dépannage

Des correctifs concrets pour les problèmes que vous rencontrerez vraiment : une formule vide, un code d'erreur Excel, un agent qui ne se reconnecte pas, et des échecs d'enrôlement — plus où chercher pour en savoir plus.

8 min de lecture

Ma formule est vide

De loin la surprise la plus fréquente, et presque toujours la même cause : vous n'avez pas publié. Modifier une connexion, une fonction, un bouton de ruban ou le volet Office ne change que le brouillon de travail de l'environnement — cela n'atteint pas Excel tant que vous ne le publiez pas délibérément.

  1. Ouvrez la page Versions de l'environnement et vérifiez la bannière. Une bannière ambrée « changements non publiés » signifie que le brouillon et la version active diffèrent.
  2. Cliquez sur Enregistrer la version, gardez « Activer cette version » coché, et enregistrez.
  3. Recalculez le classeur. La formule devrait maintenant se résoudre.

Si la bannière est bleue (rien de non publié) et que la formule reste vide, vérifiez que la fonction existe bien dans l'environnement contre lequel vous testez — les environnements hors production suffixent l'espace de noms (=NAMESPACE_DEV.MODULE.FN(…) pour Development, _QA pour QA, et ainsi de suite), de sorte qu'un classeur relié à l'espace de noms du mauvais environnement ne trouvera jamais la fonction. Voir Versions pour le modèle brouillon/version active complet.

Les codes d'erreur Excel

Ce sont les valeurs d'erreur propres à Excel, affichées dans la cellule — ConnXL n'invente rien. Voici ce que chacune signifie lorsqu'elle provient d'une fonction ConnXL, et quoi vérifier.

FieldTypeDescription
#GETTING_DATAOptional
transitoireNormal, pas une erreur : une fonction asynchrone attend encore l'agent. Elle se résout d'elle-même une fois l'appel terminé. Ne persiste indéfiniment que si l'agent est injoignable ou si l'appel reste bloqué — vérifiez que l'agent est en ligne et que la connexion dont il dépend répond.
#SPILL!Optional
débordement bloquéUne fonction qui renvoie plusieurs lignes/colonnes a besoin de cellules vides où se répandre, et quelque chose occupe cette plage. Videz les cellules en dessous et à droite de la formule, ou déplacez la formule là où il y a de la place.
#BUSY!Optional
enregistrement obsolèteExcel reste bloqué sur un ancien enregistrement de fonctions personnalisées pour l'espace de noms — généralement un reste d'une version précédente du manifeste. Fermez complètement Excel, videz son cache de complément, et rouvrez (Windows : supprimez le contenu de %LOCALAPPDATA%\Microsoft\Office\16.0\Wef\ ; sur le web, actualisez complètement). Recharger indépendamment après un changement de manifeste (un nouveau bouton de ruban, une icône, ou une action ExecuteFunction) est le déclencheur habituel.
#NAME?Optional
fonction non reconnueExcel ne reconnaît pas du tout le nom de la formule. Vérifiez l'espace de noms (rappelez-vous que les environnements hors production sont suffixés, par ex. NAMESPACE_DEV), l'orthographe du module et de la fonction, et que le manifeste de cet environnement a bien été installé — un changement de manifeste (les nouveaux noms de fonction apparaissent via des métadonnées régénérées, mais un changement d'espace de noms ou d'identité de complément nécessite un nouveau chargement indépendant) exige une réinstallation.
#VALUE!Optional
argument invalideLa fonction a reçu un argument du mauvais type ou une valeur invalide — une valeur texte là où un nombre était attendu, un paramètre hors limites, ou un argument requis laissé vide. Vérifiez les types de paramètres de la fonction par rapport à ce que les cellules référencées contiennent réellement.

Un message d'erreur personnalisé reste affiché comme un code standard

Une fonction peut lever une erreur précise (valeur invalide, division par zéro, un nom qu'elle ne reconnaît pas) et Excel l'affiche toujours comme l'un de ses propres codes — le message sous-jacent n'est pas perdu pour autant : survolez l'indicateur d'erreur de la cellule, ou consultez l'exécution de test de la fonction dans le tableau de bord, pour voir le texte réel.

L'agent ne se reconnecte pas

  • « Aucun réplica ne sert encore cet environnement » — l'agent de cet environnement ne s'est jamais connecté. Vérifiez les variables d'environnement sur l'hôte (CONNXL_BACKEND_URL, le jeton d'enrôlement ou les variables d'attestation) et que l'hôte peut atteindre le backend en sortie.
  • « Aucun réplica ne signale d'activité actuellement » — l'agent s'est déjà connecté mais ne l'est pas en ce moment. Vérifiez que le processus tourne bien sur l'hôte, et que l'accès réseau sortant vers le backend n'a pas été bloqué depuis la dernière connexion réussie.
  • Signalé hors ligne après ~10 minutes de silence — un agent qui cesse d'émettre son signal de vie est marqué hors ligne et déclenche automatiquement une alerte agent_offline ; elle se dissipe dès que l'agent se reconnecte. Voir Alertes.
  • Un réplica précis n'arrête pas de se reconnecter et vous ne le voulez pas — depuis la liste des instances de la page Agent, expulsez ce réplica. L'expulsion le draine et bloque son identifiant d'instance de se reconnecter avec le certificat de l'environnement ; Restaurer lève le blocage si vous avez expulsé le mauvais.

Échecs de certificat / d'enrôlement

Le seul identifiant de l'agent est son certificat mTLS, obtenu une seule fois à l'enrôlement. Les échecs ici se résument presque toujours à l'un de ceux-ci :

  • « Jeton d'enrôlement invalide ou déjà utilisé » — les jetons sont à usage unique et consommés dès qu'un agent s'enrôle avec succès avec eux. Générez un nouveau jeton depuis la page Agent de l'environnement (un nouveau jeton remplace tout jeton non utilisé encore en circulation) et définissez-le avant de redémarrer.
  • Mauvais identifiant de complément ou d'environnement — le parcours d'enrôlement par attestation cloud (CONNXL_ENROLL_ATTESTATION) lit directement CONNXL_ADDIN_ID/CONNXL_ENV_ID ; un identifiant erroné enrôle contre le mauvais environnement (ou échoue purement et simplement). Copiez les deux depuis la page Agent où vous enrôlez.
  • Attestation cloud rejetée — l'identité cloud de l'instance (compte, projet ou abonnement, éventuellement épinglé à une région) ne figure pas dans la liste des identités cloud de confiance de l'environnement. Ajoutez une règle sous l'onglet Sécurité de la page Agent pour le fournisseur et le compte où l'instance s'exécute réellement.
  • L'agent ne démarre pas du tout, aucune tentative d'enrôlement — Office exige HTTPS, l'agent refuse donc de démarrer sans cert.pem/key.pem à côté du binaire. C'est une paire de certificats différente de celle mTLS ci-dessus ; voir l'encadré ci-dessous.
  • L'agent démarre mais chaque appel au backend échoue à l'authentification — vérifiez que CONNXL_MTLS_CERT/CONNXL_MTLS_KEY pointent bien vers des chemins accessibles en écriture et n'ont pas été pointés par erreur vers les cert.pem/key.pem destinés à Office.

Deux paires de certificats, deux rôles différents

cert.pem/key.pem à côté du binaire servent à faire confiance à Excel dans le propre point de terminaison HTTPS de l'agent. CONNXL_MTLS_CERT/CONNXL_MTLS_KEY sont l'endroit où l'agent stocke le certificat qu'il obtient à l'enrôlement, pour s'authentifier auprès du backend. Les confondre est la plainte d'enrôlement la plus fréquente — voir Mutual TLS pour le cycle de vie complet.

Où chercher

Quand les vérifications ci-dessus n'expliquent rien, allez chercher plus de signal directement auprès de l'agent :

  • Logs de l'agent — le panneau de diagnostics de la page Agent récupère une file en direct des propres lignes de log du processus de l'agent (pas des analyses — ses lignes internes debug/info/error), c'est généralement le moyen le plus rapide de voir l'exception réelle derrière une fonction en échec. Voir Journaux et exports pour la différence avec la page Journaux d'utilisation/télémétrie.
  • Lancer le diagnostic — une auto-vérification de l'agent en un clic depuis le même panneau ; utile avant d'ouvrir un ticket d'assistance.
  • Signaler l'état — force un instantané CPU/mémoire/disque frais au lieu d'attendre le prochain programmé.
  • La chronologie de santé et la bannière d'alerte ouverte sur la page Agent — pour les problèmes de pression sur les ressources (CPU/mémoire/disque approchant le seuil d'avertissement ou critique) plutôt qu'une fonction précise qui échoue.

Sur cette page