Datumseingabe: Jahr aus vorheriger Einhgabe übernehmen?

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

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

Re: Datumseingabe: Jahr aus vorheriger Einhgabe übernehmen?

Beitrag von Stephan »

Geht das in Open- oder Libre-Office?
Nicht direkt, aber man könnte dieses Verhalten per Makro erreichen. SEHR 'quick & dirty' (denn es müsste wohl noch Einiges an Fehlerbehandlung ergänzt werden) z.B. so:

Code: Alles auswählen

Sub Jahreszahl_anhaengen()
	On Error Goto fehler
	
	addr = Thiscomponent.getCurrentSelection
	If addr.supportsService("com.sun.star.sheet.SheetCell") Then
		If addr.Type = com.sun.star.table.CellContentType.VALUE Then
			aktrow = addr.RangeAddress.StartRow-1
			aktcolumn = addr.RangeAddress.StartColumn
			aktTable =  addr.RangeAddress.Sheet
			'Datum in Format TT.MM.JJJJ wird erwartet (Systemeinstellung(!)):
			x = Split(ThisComponent.Sheets(aktTable).getCellByPosition(aktcolumn, aktrow).FormulaLocal, ".")
			xx = Split(Thiscomponent.getCurrentSelection.FormulaLocal,".")
			Thiscomponent.getCurrentSelection.FormulaLocal = xx(0) & "." & xx(1) & "." & x(2)
		End If
	End If
	
	fehler:
	
End Sub
Weise dieses Makro dem Tabellenereignis "Inhalt geändert" zu.

Ich hänge mal eine Demodatei an, dort kann man, beginend ab A2 Testeingaben machen. Letztendlich müsste sowas aber als Extension implementiert werden.



Gruß
Stephan
Dateianhänge
Demo_Dateneingabe.ods
(9.58 KiB) 43-mal heruntergeladen
Stephan
********
Beiträge: 12369
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Datumseingabe: Jahr aus vorheriger Einhgabe übernehmen?

Beitrag von Stephan »

wenn auch Quick&Dirty
naja, ich will gerne helfen bin aber wieder einmal sehr unter Zeitdruck und war mir andererseits ungefähr im Klaren das das nötige Makro nicht so ganz kurz sein wird, wenn es für beliebige Dateien funktionieren soll und es müsste ja auch vorzugsweise als Extension umgesetzt sein um es bequem verteilen zu können.

Es ist erfreulich das Du selbst mit dem Code zurechtkommst, weil ich fürchtete Du hast keinerlei Kenntnisse von Makros und ich hätte dann schrittweise doch alles selbst ergänzen müssen.

Du kannst gerne fragen wenn noch Fragen auftreten.


Gruß
Stephan
echo
*******
Beiträge: 1005
Registriert: Fr, 14.11.2008 15:27
Wohnort: BRA - Nds

Re: Datumseingabe: Jahr aus vorheriger Einhgabe übernehmen?

Beitrag von echo »

hallo zusammen, mal ein Gedanke dazu:
Wenn du zwei Spalten daraus machst und Eingabe-- und Datumspalte trennst, funktioniert das ganze auch per Formel.

Und wenn man dann schon dabei ist, nimmt man für die Eingabe als Trennzeichen nicht den Punkt sondern das Komma.
Alles geht dann super schnell und das, (wer hat) ausschließlich über die Zehnertastatur.
Zusätzlich wird durch das Komma als Trennung die Eingabe nicht zum Datum umformatiert, das macht die Formel kürzer.

Gruß Holger
(Wenn ich die Idee noch weiterspinne, könnte in diesem Beispiel die Eingabe von "1977" ebenfalls entbehrlich sein, wenn man OO/LO irgendwie bekanntgeben könnte, dass man gerade dabei ist, aufsteigend sortierte Daten einzufgeben...):
Nachtrag:
wäre das ganze überhaupt eine Option?
Dann lässt sich beim neuen Datum natürlich auch prüfen ob es vom letzten Datum aus gesehen in der Zukunft liegt,
wenn nicht passt man das Jahr an.
Dateianhänge
Eingabe Zehnertastatur.ods
(13.16 KiB) 44-mal heruntergeladen
Antworten