Hallo,
mein Problem besteht erst in neuerer Zeit. In den Versionen 2.... von OO gab es die Schwierigkeiten nicht.
Ich weise einigen Zellen in einem Sheet einer Calc-Datei per Makro eine Formel zu. Diese Liste enthält dann die Feiertage eines Jahres.
Der Code dazu lautet z.B.
...
sheet.getcellbyposition(0,3).formula="=IF(ISLEAPYEAR(A1);A1+121;A1+120)"
...
In A1 steht dabei das gültige Datum für den 1. Januar des aktuellen Jahres.
Die Formel müßte (und hat in der Version 2) unter Berücksichtigung des Schaltjahres den 1. Mai zeigen.
Jetzt steht in der Zelle "#Name?". Das IF wird korrekt in WENN übersetzt, aber aus ISLEAPYEAR wird nicht ISTSCHALTJAHR .
Die deutsche Funktion wird aber auch nicht akzeptiert.
Kann mir da jemand einen Tipp geben, wie diese Kuh vom Eis kommt?
Danke schon mal..
Friedhelm
Probleme mit Calc-Formeln
Moderator: Moderatoren
-
- ****
- Beiträge: 119
- Registriert: Di, 28.11.2006 19:44
- Wohnort: Meppen
Re: Probleme mit Calc-Formeln
Hallo Hömmelmann!
Da ich meistens die Englischen Bezeichnungen nicht kenne, verwende ich immer die Deutsche Funktionen. Für die Eingabe in der Zelle schreibt man dann statt Zelle.Formula: Zelle.FormulaLocal.
Also probiers einmal mit folgender Formel:
Gruß
Charly
Da ich meistens die Englischen Bezeichnungen nicht kenne, verwende ich immer die Deutsche Funktionen. Für die Eingabe in der Zelle schreibt man dann statt Zelle.Formula: Zelle.FormulaLocal.
Also probiers einmal mit folgender Formel:
Code: Alles auswählen
sheet.getcellbyposition(0,3).formulaLocal ="=Wenn(IstSchaltjahr(A1);A1+121;A1+120)"
Charly
-
- ****
- Beiträge: 119
- Registriert: Di, 28.11.2006 19:44
- Wohnort: Meppen
Re: Probleme mit Calc-Formeln
Ja, das funktioniert einwandfrei.
Danke vielmals.
Friedhelm
Danke vielmals.
Friedhelm
Re: Probleme mit Calc-Formeln
Hallo
Der 1.Mai geht doch einfacher mit:
oder besser gleich per Runtime-funktion:
Gruß Karo
Der 1.Mai geht doch einfacher mit:
Code: Alles auswählen
sheet.getcellbyposition(0,3).formulaLocal ="=DATUM(JAHR(A1);5;1)"
Code: Alles auswählen
sheet.getcellbyposition(0,3).formula ="=DATE(YEAR(A1);5;1)"
Code: Alles auswählen
sheet.getcellbyposition(0,3).formulalocal = DateSerial(year(sheet.getcellbyposition(0,0).value),5,1)
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)