Bonjour,
Message de Bob date 2007-11-08 19:55 :
Le problème sur lequel je bloque maintenant est :
*Comment charger la librairie Javascript automaiquement ?*
En fait, le problème n'est pas lié au chargement de la librairie
javascript. Le problème ne se produit qu'au chargement du document !
Je pense que ce doit être une limitation de l'implémentation actuelle
des scripts. Par contre on peut appeler (via Basic) une fonction
JavaScript de "Mes macros".
Le renvoi d'une valeur par une fonction JavaScript est d'ailleurs plus
simple que ton exemple. On récupère la dernière valeur évaluée par la
fonction !
Voici une fonction JavaScript renvoyant le produit du premier argument
avec un nombre aléatoire entre 0 et 1. Une seule ligne suffit:
ARGUMENTS[0]*Math.random();
Créons cette fonction sous le nom de zozo dans la bibliothèque
Javascript BibliEssai créée dans Mes macros.
La fonction Basic intermédiaire s'appellera versZozo :
Function versZozo(s as Double) as Double
Dim oDocScriptProvider as Object
Dim monScript as Object, mspf as object
oDocScriptProvider = ThisComponent.getScriptProvider()
monScript =
oDocScriptProvider.getScript("vnd.sun.star.script:BibliEssai.zozo.js?language=JavaScript&location=user")
versZozo = monScript.Invoke(Array(s), Array(1), Array())
End Function
Il ne reste plus qu'à l'appeler dans une cellule, par exemple:
=VERSZOZO(5)
formater la cellule avec plusieurs décimales pour voir le résultat.
Je ferme complètement le document et OpenOffice. A chaque réouverture du
document la cellule contient une nouvelle valeur, donc la fonction est
bien appelée, sans erreur.
______
Bernard
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]