On 30.04.2012 12:03, Stefan Weigel wrote:
Hallo,
Am 30.04.2012 09:23, schrieb Edgar Kuchelmeister:
Am 29.04.2012 14:39, schrieb Günter Fritze:
Kann man einer Zelle in Calk ein Ereignis zuweisen?
Meines Wissens nicht, dafür verwendet man dann eher Formularfelder.
Doch, es gibt Listener.
Das folgende Beispiel enthält drei Prozeduren. Die erste Prozedur
"AddListener" fügt den beiden Zellen mit den Namen "Beginn" und
"Ende" im Blatt "Reise" jeweils einen Listener hinzu.
Wenn das geschehen ist, wird die Prozedur "Change_modified" immer
aufgerufen, wenn in einer der beiden Zellen mit den Namen "Beginn"
oder "Ende" eine Änderung vorgenommen wurde.
Die Prozedur "RemoveListener" entfernt die Listener wieder.
Gruß
Stefan
REM ***** BASIC *****
global oCell1
global oCell2
global oListener
Sub AddListener
'add listener for cell oCell
oDoc = ThisComponent
oSheet = oDoc.Sheets().getByName("Reise")
oCell1 = oSheet.getCellRangeByName("Beginn")
oCell2 = oSheet.getCellRangeByName("Ende")
oListener = CreateUnoListener( "Change_",
"com.sun.star.util.XModifyListener" )
oCell1.addModifyListener( oListener )
oCell2.addModifyListener( oListener )
End Sub
Sub RemoveListener
oCell1.removeModifyListener( oListener )
oCell2.removeModifyListener( oListener )
End Sub
Sub Change_modified( aEvent )
OOoReiseTage
End Sub
Danke!
Das mit dem Listener ist es.
MfG
Günter
--
Informationen zum Abmelden: E-Mail an users+h...@de.libreoffice.org
Probleme?
http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert