Seite 1 von 1
Datum aus Datumsfeld in Zelle schreiben
Verfasst: Mi 9. Apr 2014, 15:37
von Frank2203
Hallo,
ich habe im Calc ein Datumsfeld erstellt und möchte jetzt das dort angezeigte Datum in die Zelle B2 schreiben. Nur leider finde ich kein passendes Makro, bzw. irgend eine Funktion die das ermöglicht. Ich muss auch gestehen das ich bei Calc ein Neuling bin und benötige etwas Hilfe.
Ich hoffe mir kann jemand helfen.
Vielen Dank
Gruß Frank
Re: Datum aus Datumsfeld in Zelle schreiben
Verfasst: Mi 9. Apr 2014, 17:20
von mikele
Hallo,
einfacher ist es, anstelle eines Datumsfeldes ein formatiertes Feld zu nuzten. Das Feld formatierst du mit dem gewünschten Datumsformat und verbindest es im Tab Daten mit der Zelle B2.
Re: Datum aus Datumsfeld in Zelle schreiben
Verfasst: Do 10. Apr 2014, 07:15
von Frank2203
Hallo,
das Problem ist das ich den Kalender benötige, um die Möglichkeit zu haben andere Datumsangaben dort einzutragen. Eine formatierte Zelle nützt mir nichts, weil ich da keine Auswahl mehrerer Tage angeben kann sondern wenn dann nur ein Datum ( zum Beispiel das für Heute).
Wäre klasse wenn mir da einer ein Makro zur Verfügung stellt oder mir eine Formatierung der Zelle erklärt.
Vielen Dank
Re: Datum aus Datumsfeld in Zelle schreiben
Verfasst: Fr 11. Apr 2014, 22:25
von mikele
Hallo,
ich musste ein bisschen knobeln - erfolgreich. (und dann ist es so einfach

)
Mit folgendem Makro sollte es klappen:
Code: Alles auswählen
Sub Main (Event as objec)
datum=Event.Source.Model.Text
if isdate(datum) then thiscomponent.currentcontroller.activesheet.getcellbyposition(1,1).value=cdate(datum)
End Sub
Wie man allerdings im Allgemeinen auf ein Steuerelement auf einem Tabellenblatt zugreift habe ich (noch) nicht herausbekommen. Aber da gibt's bestimmt auch Rat ...
Re: Datum aus Datumsfeld in Zelle schreiben
Verfasst: Mo 14. Apr 2014, 08:46
von Frank2203
Vielen Dank das hat mir schon sehr viel weiter geholfen und es funktioniert so wie ich das gern hätte. Klasse!!!
Danke
Re: Datum aus Datumsfeld in Zelle schreiben
Verfasst: Mo 14. Apr 2014, 20:04
von F3K Total
mikele hat geschrieben:Wie man allerdings im Allgemeinen auf ein Steuerelement auf einem Tabellenblatt zugreift habe ich (noch) nicht herausbekommen. Aber da gibt's bestimmt auch Rat ...
Aber sicher, z.B. so:
Code: Alles auswählen
osheet = thiscomponent.sheets.getbyname("Tabelle1")
odrawpage = oSheet.Drawpage
oforms = odrawpage.forms
oform = oForms.getbyname("Formular")
oDatumsfeld1 = oform.getbyname("Datumsfeld 1")
oder kurz
Code: Alles auswählen
oDatumsfeld1 = thiscomponent.sheets.Tabelle1.drawpage.forms.Formular.getbyname("Datumsfeld 1")
Habe gerade versucht eine function daraus zu bauen, geht auch, aktualisiert sich leider nicht, wenn im Kontrollelement eine Änderung vorgenommen wird, daher ist deine EVENT-Methode schon gut.
Gruß R
Re: Datum aus Datumsfeld in Zelle schreiben
Verfasst: Mo 14. Apr 2014, 20:44
von mikele
Hallo F3K Total,
danke!
Folgendes hatte ich auch schon herausbekommen (bessser herausgegoogelt):
Code: Alles auswählen
oDoc=thiscomponent
oPage=oDoc.sheets(0).drawpage
oForm=oPage.forms.getbyindex(0)
oControl=oForm.getbyname("Datumsfeld 1")
Mein Problem war, dass sich die Kontrollelemente ja auf ein Formular oder einen Dialog beziehen. Nun muss man also wissen (woher?), dass sich in dieser Konstellation das Kontrollelement im Formular "Formular" bzw. Nr. 1 (index(0)) befindet.
Ich bin immer noch dabei, die API Dokumentation so zu verstehen, dass ich sie lesen kann oder umgekehrt ...
Abgesehen davon würde mich eine Erklärung für
interessieren (gehört aber eher in ein anderes Forum). Ich finde ja toll, dass es funktioniert, aber ich wüsste auch warum ...
Re: Datum aus Datumsfeld in Zelle schreiben
Verfasst: Mo 14. Apr 2014, 20:57
von F3K Total
Hi,
mikele hat geschrieben: Nun muss man also wissen (woher?)
Na da nimmt man sich im Formularentwurfsmodus den Formularnavigator und versteht den Aufbau sofort:

- NG.png (37.28 KiB) 5429 mal betrachtet
HTH R
Re: Datum aus Datumsfeld in Zelle schreiben
Verfasst: Mo 14. Apr 2014, 21:01
von mikele
Hallo,
cool - so einfach

Re: Datum aus Datumsfeld in Zelle schreiben
Verfasst: Mo 14. Apr 2014, 21:42
von F3K Total
Noch ein Tipp:
Writer(auch eingebettete Formulare in BASE):
Calc:
Impress/Draw:
Gruß R