Funktion funktioniert nicht wie gewünscht

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

keksi1970
*****
Beiträge: 464
Registriert: So, 27.01.2008 11:47
Wohnort: DU

Funktion funktioniert nicht wie gewünscht

Beitrag von keksi1970 »

hi,

also ich habe diese Funktion :

Code: Alles auswählen

Function Counting(Tabellenanzahl as integer, Zelle as string, wert as string) as integer
dim checksheet as object
dim checkobj as object
odoc = thiscomponent

a = 0

for i = 0 to Tabellenanzahl-1

	checksheet = oDoc.Sheets(i)
	checkobj = checksheet.getcellrangebyname(Zelle)
	Checkstring = checkobj.string
	
	if checkstring = wert then
	a = a + 1
	End if
	
next
counting = a
End function
wie stelle ich es nun an, dass bei Änderungen in den Sheets auf den zu zählenden Wert sich das Ergebnis aktualisiert, und nicht nur nach "speichern/NeuÖffnen"

Gruß

Andreas
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Funktion funktioniert nicht wie gewünscht

Beitrag von Stephan »

wie stelle ich es nun an, dass bei Änderungen in den Sheets auf den zu zählenden Wert sich das Ergebnis aktualisiert
indem Du die Funktion um irgendeinen veränderlichen Parameter i.S. einer Zellkoordinate ergänzt, dieser mußt in der Funktion nicht ausgewertet werden, sollte aber Calc dazu bewegen das Ergebnis der Funktion auf dem Tabellenblatt zu aktualisieen.



Gruß
Stephan
keksi1970
*****
Beiträge: 464
Registriert: So, 27.01.2008 11:47
Wohnort: DU

Re: Funktion funktioniert nicht wie gewünscht

Beitrag von keksi1970 »

Sorry, Aber das hab ich nu überhaupt nicht verstanden.

Gruß Andreas
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Funktion funktioniert nicht wie gewünscht

Beitrag von Stephan »

ja, hatte ich falsch formuliert, "Zellkoordinate" ist nicht das richtige Wort, ich meinte eine normale Zelladresse, also A1 oder Ähnliches.

z.B.:

Function Counting(Tabellenanzahl as integer, Zelle as string, wert as string, Zelladresse) as integer



Gruß
Stephan
keksi1970
*****
Beiträge: 464
Registriert: So, 27.01.2008 11:47
Wohnort: DU

Re: Funktion funktioniert nicht wie gewünscht

Beitrag von keksi1970 »

also eine Zelle, deren Wert sich auch verändert ?

Mir entgeht irgendwas, oder ? :shock:

EDIT : hab einfach einen Zellbereich in die Formel eingegeben ( Counting(30;"K1";"";B52:B80), deren Werte sich ändern, wenn K1 sich ändert. und schon geht es. stellt sich die Frage warum erst dann ? btw : die Function an sich hab ich so gelassen (?)

Gruß

Andreas
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Funktion funktioniert nicht wie gewünscht

Beitrag von Stephan »

also eine Zelle, deren Wert sich auch verändert ?

Mir entgeht irgendwas, oder ?
Das weiß ich nicht, das Verhalten der benutzerdefinierten Funktionen ist an der Stelle so wie das der anderen Tabellenfunktionen.
stellt sich die Frage warum erst dann?
Weil Calc generell nur Formeln automatisch aktualisiert bei denen was zu aktualisieren ist, bei Deiner Formel/Funktion war jedoch bisher nichts zu aktualisieren, da alle Parameter statische Wertze waren, deshalb solltest Du ja eine Zelladresse als dynamischen Parameter hinzufügen, klar ginge das genauso mit einer Zellbereichsadresse oder einem auf Grundlage einer Zellbereichsadresse berechnetem Wert.


Gruß
Stephan
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Funktion funktioniert nicht wie gewünscht

Beitrag von komma4 »

keksi1970 hat geschrieben:wie stelle ich es nun an, dass bei Änderungen in den Sheets auf den zu zählenden Wert sich das Ergebnis aktualisiert, und nicht nur nach "speichern/NeuÖffnen"
Mit der Tastenkombination STRG+Umschalt+F9?!
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
keksi1970
*****
Beiträge: 464
Registriert: So, 27.01.2008 11:47
Wohnort: DU

Re: Funktion funktioniert nicht wie gewünscht

Beitrag von keksi1970 »

Vielen Dank, nun hab ichs verstanden

Gruß Andreas
Antworten