AW: [de-users] Calc/Basic: Zelleninhalte sind durch Funktion nicht veränderbar?

2005-04-10 Diskussionsfäden Frank Lauer
Hallo Jörg, hallo Liste,

Ich habe eine Möglichkeit gefunden, allerdings nicht über die Änderung
einer Zelle direkt sonder über die Definition der Funktion als
Matrixfunktion. Wenn ich dann einen Array stat eines Einzelwertes
zurückgebe und die Funktion in Calc als Matrixfunktion mit den
entsprechenden Zelle definiere werden die anderen Zellen auch gefüllt.
Das ist für meine Anwendung sogar noch besser als das direkte Schreiben.

Gruß

Frank
-Ursprüngliche Nachricht-
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
Gesendet: Sonntag, 10. April 2005 01:59
An: users@de.openoffice.org
Betreff: Re: [de-users] Calc/Basic: Zelleninhalte sind durch Funktion
nicht veränderbar?


Hallo,

Frank Lauer schrieb:
 nicht verändern. Warum ist das so?

Weil alle Zellen zu dem Zeitpunkt wo die Funktion läuft automatisch in
den Zustand schreibgeschützt gesetzt werden.

 Gibt es eine Möglichkeit mit einer
 Calcfunktion weitere Zellen außer der aufrufenden zu verändern?

Nein. Selbst die aufrufende Zelle läßt sich nicht ändern, sie enthält
stehts nur den Rückgabewert der Funktion jedoch nicht einen Wert den Du
vielleicht versuchst mit Hilfe der Funktion in die Zelle zu schreiben.


Gruß
Jörg



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[de-users] Calc/Basic: Zelleninhalte sind durch Funktion nicht veränderbar?

2005-04-09 Diskussionsfäden Frank Lauer
Hallo Liste,
 
ich habe folgendes Calc Makro geschrieben
 
REM  *  BASIC  *
Sub Macro1
  Testfunktion(100)
End Sub
 
Function Testfunktion(wert)
  Testfunktion=wert
  OSheet = ThisComponent.Sheets(0)
  osheet.getCellByPosition(1,1).value = wert
End Function
 
Wenn ich nun die Testfuktion über Macro1 aufrufe (wie dargestellt), dann
ändert sich der Inhalt der Zelle B2 (getCellByPosition(1,1))
ordnungsgemäß auf 100. 
 
Wenn ich die Testfunktion jedoch aus einer Calczelle über
=Testfuktion(122) aufrufe ändert sich der Zelleninhalt B2 nicht. Die
aufrufende Zelle ändert sich jedoch auf 122 = die Fuktion lief durch.
Wenn ich zusätzlich MSGBOX osheet.getCellByPosition(1,1).value in die
Funktion einfüge bekomme ich auch den Inhalt der Zelle angezeigt. Ich
kann beim Aufruf als Calcfunktion also auf die Zelle zugreifen, sie aber
nicht verändern. Warum ist das so? Gibt es eine Möglichkeit mit einer
Calcfunktion weitere Zellen außer der aufrufenden zu verändern?
 
Gruß Frank


Re: [de-users] Calc/Basic: Zelleninhalte sind durch Funktion nicht veränderbar?

2005-04-09 Diskussionsfäden Jörg Schmidt
Hallo,

Frank Lauer schrieb:
 nicht verändern. Warum ist das so?

Weil alle Zellen zu dem Zeitpunkt wo die Funktion läuft automatisch in
den Zustand schreibgeschützt gesetzt werden.

 Gibt es eine Möglichkeit mit einer
 Calcfunktion weitere Zellen außer der aufrufenden zu verändern?

Nein. Selbst die aufrufende Zelle läßt sich nicht ändern, sie enthält
stehts nur den Rückgabewert der Funktion jedoch nicht einen Wert den Du
vielleicht versuchst mit Hilfe der Funktion in die Zelle zu schreiben.


Gruß
Jörg



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]