Résoudre l’erreur 97 dûe à l’API ActiveX de Microsoft Office dans le ‘Report Generation Toolkit’de LabVIEW

27 octobre 2017

En utilisant le  ‘Report Generation Toolkit’, il est possible que l’erreur 97 soit rencontrée.

Elle peut survenir si la version de Microsoft Office pour laquelle le code LabVIEW a été fait venait à changer. Par exemple, l’erreur pourrait apparaitre si le code LabVIEW a été développé avec Office 2010, et qu’Office 2016 est installé sur l’ordinateur par la suite. Elle peut aussi se manifestée si le code ou l’EXE est déplacé vers une cible ayant une version différente d’Office.
La résolution de ce problème est facile si on sait où chercher!

La cause de l’erreur 97 vient du fait que plusieurs prototypes de fonctions ActiveX sont différents d’une version d’Office à l’autre. LabVIEW n’est alors pas capable de s’adapter à ce changement.
Pour régler le problème, il faut premièrement installer la version Office qui sera utilisée sur la cible, pour ensuite effectuer un ‘mass-compile’ des fichiers du projet LabVIEW (‘Tools -> Advanced -> Mass compile …’).

Mais il se peut que cela ne soit pas suffisant!

Si l’erreur persiste, les VIs problématiques doivent être ouverts pour identifier la méthode ActiveX d’où qui la retourne. Le prototype de chaque méthode doit ensuite être rechargé. Pour se faire, cliquez sur le nom de la méthode, en choisir une autre, et finalement revenir à la méthode d’origine. Normalement, le prototype sera mis-à-jour (il y aura plus ou moins d’entrées/sorties que précédemment).

Une fois toutes les méthodes rechargées, l’erreur 97 disparaîtra!

  

Si vous faites la distribution d’EXE à plusieurs utilisateurs qui utilisent des versions différentes d’Office, il faudra créer un EXE pour chacune d’elles.

Voici une liste non-exhaustive des méthodes à recharger :

  • Excel :
    • BorderAround
    • SaveAs

Aidez-nous à la compléter!