Bernard Marcelly
Tue, 08 Dec 2009 23:19:33 -0800
Bonjour Xavier, Cela ne marche pas parce que l'évaluation des expressions Calc à l'ouverture du document se fait avant l'évènement "Chargement du document". La solution est soit de laisser les fonctions dans Standard, soit de créer dans Standard une fonction relais pour chaque fonction, qui charge la bibliothèque, appelle la fonction de la bibliothèque et renvoie le résultat obtenu... Si tu mets la bibliothèque dans Mes Macros, tu peux charger OpenOffice avant d'ouvrir le document Calc, et ça fonctionne. Sauf qu'il y a une bogue : Il faut que la bibliothèque s'appelle Library1 ! Si la bibliothèque ne s'appelle pas Library1, mais par exemple machin ou Library2, Calc renvoie obstinément #VALEUR! même si la bibliothèque est déjà chargée ! On revient alors à la solution précédente. Bernard Message de xavier roguiez date 2009-12-08 21:14 :
xavier roguiez a écrit :Bonsoirj'avais stocké toutes mes macros fonctions dans la librairie standard. L'appel depuis calc se faisait donc sans problème, mais j'ai finalement déplacé ces macros fonctions, dans une autre librairie identique sous un autre nom ooBA.J'ai ensuite crée une procédure Sub ChargeOO BasicLibraries.LoadLibrary("ooBA") End SubQue je lance à l'ouverture, mais les fonctions ne sont toujours pas accessibles sous Calc. Dans les cellules il me répond "?NOM"Cela doit être tout bête mais je sèche sur le dossier ?BonsoirEn fait j'ai un peu modifié mon fichier, mais cela ne fonctionne toujours pas comme je le voudrais. J'ai un fichier ooBA.ods qui contient dans la librairie ooBA, avec toutes mes macros fonctions.J'ai un sous routine : Sub LoadingLibraries BasicLibraries.LoadLibrary("ooBA") End SubEnsuite sous calc j'ai personnalisé, afin que la macro LoadingLibraries soit lancé à l'ouverture du document. Mais ce que j'observe, c'est que calc se lance, recalcule toutes les cellules puis charge mes macros...Et pendant le recalcul il lui manque toutes les fonctions, et il m'affiche "#NOM ?"Si j'édite la cellule et valide, le calcul se fait.Et je voudrais l'inverse, est ce possible ? C'est à dire que Calc charge mes macros puis lance le recalcul des cellules.Je pense pouvoir le faire en installant mes macros dans Open Office directement et non dans le fichier source ooBA.ods. Mais en cours de développement je voulais le faire en "local"Est ce que je passe à côté de quelque chose ? D'avance merci xavier --------------------------------------------------------------------- To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org For additional commands, e-mail: prog-h...@fr.openoffice.org
--------------------------------------------------------------------- To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org For additional commands, e-mail: prog-h...@fr.openoffice.org