von Stephan » Do, 08.07.2004 15:31
Der Sinn der Aktion erschließt sich mir nicht, liefern z.B. die Funktionen Fehlermeldungen in den Zellen solange noch keine Ausgangswerte veorhanden sind, kannst Du doch diesen Fall bereits bei den Funktionen berücksichtigen, aber wie auch immer. Du kannst zunächst die automatische Berechnung ausschalten und dann wieder einschalten und anschließend einmalig neuberechnen lassen. Von da ab erfolgt dann die Neuberechnung automatisch.
In OpenOffice konnte ich das mit dem Makrorekorder aufzeichnen:
Code: Alles auswählen
sub neu_berechnen
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Calculate", "", 0, Array())
end sub
Code: Alles auswählen
sub automatische_Berechnung_ausschalten_einschalten
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "AutomaticCalculation"
args1(0).Value = false 'oder true zum Einschalten
dispatcher.executeDispatch(document, ".uno:AutomaticCalculation", "", 0, args1())
end sub
Wie das nun in JAVA geht weiß ich nicht, aber vielleicht reicht Dir ja meine Anregung um das selbst umzusetzen.
Gruß
Stephan
Der Sinn der Aktion erschließt sich mir nicht, liefern z.B. die Funktionen Fehlermeldungen in den Zellen solange noch keine Ausgangswerte veorhanden sind, kannst Du doch diesen Fall bereits bei den Funktionen berücksichtigen, aber wie auch immer. Du kannst zunächst die automatische Berechnung ausschalten und dann wieder einschalten und anschließend einmalig neuberechnen lassen. Von da ab erfolgt dann die Neuberechnung automatisch.
In OpenOffice konnte ich das mit dem Makrorekorder aufzeichnen:
[code]sub neu_berechnen
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Calculate", "", 0, Array())
end sub[/code]
[code]sub automatische_Berechnung_ausschalten_einschalten
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "AutomaticCalculation"
args1(0).Value = false 'oder true zum Einschalten
dispatcher.executeDispatch(document, ".uno:AutomaticCalculation", "", 0, args1())
end sub [/code]
Wie das nun in JAVA geht weiß ich nicht, aber vielleicht reicht Dir ja meine Anregung um das selbst umzusetzen.
Gruß
Stephan