❤️ Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! ❤️
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀

❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Datum aus Datumsfeld in Zelle schreiben

CALC ist die Tabellenkalkulation, die Sie immer wollten.
Antworten
Frank2203
Beiträge: 3
Registriert: Mi 9. Apr 2014, 15:29

Datum aus Datumsfeld in Zelle schreiben

Beitrag von Frank2203 » Mi 9. Apr 2014, 15:37

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
Dateianhänge
Hilfe.png
Hilfe.png (22.54 KiB) 5534 mal betrachtet

mikele
* LO-Experte *
Beiträge: 1932
Registriert: Mo 1. Aug 2011, 20:51

Re: Datum aus Datumsfeld in Zelle schreiben

Beitrag von mikele » Mi 9. Apr 2014, 17:20

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.
Gruß,
mikele

Frank2203
Beiträge: 3
Registriert: Mi 9. Apr 2014, 15:29

Re: Datum aus Datumsfeld in Zelle schreiben

Beitrag von Frank2203 » Do 10. Apr 2014, 07:15

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

mikele
* LO-Experte *
Beiträge: 1932
Registriert: Mo 1. Aug 2011, 20:51

Re: Datum aus Datumsfeld in Zelle schreiben

Beitrag von mikele » Fr 11. Apr 2014, 22:25

Hallo,

ich musste ein bisschen knobeln - erfolgreich. (und dann ist es so einfach :o )
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 ...
Dateianhänge
zugriff_datumsfeld.ods
(9.97 KiB) 387-mal heruntergeladen
Gruß,
mikele

Frank2203
Beiträge: 3
Registriert: Mi 9. Apr 2014, 15:29

Re: Datum aus Datumsfeld in Zelle schreiben

Beitrag von Frank2203 » Mo 14. Apr 2014, 08:46

Vielen Dank das hat mir schon sehr viel weiter geholfen und es funktioniert so wie ich das gern hätte. Klasse!!!

Danke

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: Datum aus Datumsfeld in Zelle schreiben

Beitrag von F3K Total » Mo 14. Apr 2014, 20:04

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
Windows 11: AOO, LO Linux Mint: AOO, LO

mikele
* LO-Experte *
Beiträge: 1932
Registriert: Mo 1. Aug 2011, 20:51

Re: Datum aus Datumsfeld in Zelle schreiben

Beitrag von mikele » Mo 14. Apr 2014, 20:44

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

Code: Alles auswählen

.Source.Model.Text
interessieren (gehört aber eher in ein anderes Forum). Ich finde ja toll, dass es funktioniert, aber ich wüsste auch warum ...
Gruß,
mikele

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: Datum aus Datumsfeld in Zelle schreiben

Beitrag von F3K Total » Mo 14. Apr 2014, 20:57

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
NG.png (37.28 KiB) 5430 mal betrachtet
HTH R
Windows 11: AOO, LO Linux Mint: AOO, LO

mikele
* LO-Experte *
Beiträge: 1932
Registriert: Mo 1. Aug 2011, 20:51

Re: Datum aus Datumsfeld in Zelle schreiben

Beitrag von mikele » Mo 14. Apr 2014, 21:01

Hallo,

cool - so einfach :shock: :D
Gruß,
mikele

F3K Total
* LO-Experte *
Beiträge: 2501
Registriert: So 10. Apr 2011, 10:10

Re: Datum aus Datumsfeld in Zelle schreiben

Beitrag von F3K Total » Mo 14. Apr 2014, 21:42

Noch ein Tipp:

Writer(auch eingebettete Formulare in BASE):

Code: Alles auswählen

Thiscomponent.drawpage.forms ...
Calc:

Code: Alles auswählen

Thiscomponent.sheets.Mysheet.drawpage.forms ...
Impress/Draw:

Code: Alles auswählen

Thiscomponent.drawpages.mydrawpage.forms ...
Gruß R
Windows 11: AOO, LO Linux Mint: AOO, LO


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten