Bonjour,

J'essaye de trouver une méthode pour remplacer la fonction
Worksheet_Activate() d'Excel.

J'ai d'abord utilisé la méthode décrite dans le document "Porting Excel/VBA
to Calc/StarBasic"
Elle met un listner sur "com.sun.star.beans.XPropertyChangeListener"
Ca marche mais dès que l'on fait un apercu avant impression, le listner est
perdu.
Pas très utilisable donc.

J'ai trouvé une deuxième méthode sur OOoForum.org dont le code est
ci-dessous.
Ca fonctionne aussi, mais dès que l'on sort de l'aperçu avant impression
c'est carrement OOo qui se plante.
Je suis en 00o2.0.3Rc7 sous Windows XP.

J'ai deux questions :
 - Le plantage est connu ?
 - Y'a une autre méthode pour remplacer Worksheet_Activate() ?

Merci D'avance.

Extrait du code :

        Sub add_Listener
                ' get the model
                oDoc = thisComponent
                ' get the controller
                oView = oDoc.getCurrentController()
                ' create the listener
                oListener = CreateUnoListener  ("XList_",
"com.sun.star.sheet.XActivationEventListener")
                ' add the listener to controller
                oView.addActivationEventListener (oListener)
                msgBox "XActivationEventListener added"
        End Sub

        Sub XList_activeSpreadsheetChanged ( oEvento )
                ' get the event object
                oSheet = oEvento.ActiveSheet
                sSheetName = oSheet.getName()
                msgBox (sSheetName, 176, "Active Sheet")
        End Sub



Ets Louis MAZET Holding
Service Informatique
Frédéric BAGNOL
P  Sauvez un arbre... n'imprimez ce mail que si cela vous est indispensable
!

Répondre à