Tastenkombination für aktuelles Datum einfügen gesucht!

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

belana
Beiträge: 6
Registriert: Do, 30.12.2004 12:55

Tastenkombination für aktuelles Datum einfügen gesucht!

Beitrag von belana »

Hallo,

gibt es in OO Calc eine Tastkombination zum Einfügen des aktuellen Datums?

Ich möchte per Shortcut das jetzige Datum in eine Zelle einfügen (keine =jetzt).

Vielen Dank und Grüße!
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hey,

Da musst du dir ein Makro schreiben und dieses dann einer Tastenkombination deiner Wahl zuweisen. Voreingestellt gibt es da nix.

Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
belana
Beiträge: 6
Registriert: Do, 30.12.2004 12:55

Beitrag von belana »

Und wie erstellt man solch ein Makro?

Please Help!

Grüßlis
Belana
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hallo Belana,

Und wie erstellt man solch ein Makro?
Hmm, da gibt es viele Varianten. Ein ausführliches Makro mit Fehlerroutinen findest du unter:
http://www.teamstaroffice.org/wiki/moin ... ellesDatum
Wenn es etwas einfacher (und schneller) sein kann, dann gehe vor wie folgt:
Extras - Makro -> Bibikiothek soffice-Standard -> Neu -> (namen übernehmen oder eigenen vergeben)
Allen Inhalt im neuen Modul löschen, dann den folgenden Makrocode einfügen:

Code: Alles auswählen

Sub AktuellesDatumEinfuegen
	thisComponent.CurrentSelection().setString(date())
End Sub
Speichern. Jetzt kannst du das Makro auf eine Tastaturfolge legen -
Extras - Anpassen - Tastatur -> zum Beispiel Umschalt + F3 ist frei für Calc. Also links im ersten Feld unten zunächst die Bibliothek suchen (Bereich - OpenOffice.org - Standard - Modulname) im Zweiten Feld (Funktionen) erscheint der Makroname -> jetzt die Tastaturkombination oben suchen, markieren und Neu drücken. Ist jetzt zugewiesen.

Jetzt wird das aktuelle Datum als Text in die aktive Zelle eingefügt.

Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
belana
Beiträge: 6
Registriert: Do, 30.12.2004 12:55

DANKE!!

Beitrag von belana »

Hallo Tom
:D
Es hat wunderbar geklappt! Bin ganz happy!!

Hast du noch den Code dafür, dass man in eine Zelle die Zelle die genau oben dran sich befindet reinkopiert?

Klar kann ich in die Zelle obendran gehen und sie kopieren und sie unten drunter wieder einzusetzen, aber es müsste doch auch in nur 1 Schritt gehen, oder?

Ich hoffe ich kriege die Einstellungen noch hin, ohne euch allzu sehr zu nerven.

Danke für eure Hilfe

Grüßlis
Belana

Edit meint ich solle noch ne Überschrift drüber setzten ;)
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hallo belana,
Hast du noch den Code dafür, dass man in eine Zelle die Zelle die genau oben dran sich befindet reinkopiert?
Nicht direkt - aber der ist schnell geschrieben:

Code: Alles auswählen

Sub ZellinhaltObenKopieren
	on Error resume next
	oDoc = thisComponent
	' aktuelle Zelle
	oZellAdr = oDoc.getCurrentSelection().getCellAddress()  
	iSheet = oZellAdr.sheet
	oZelle=oDoc.Sheets(iSheet).getCellByPosition(oZellAdr.column, oZellAdr.row)
	' die Zelle oben drüber
	oZellUeber = oDoc.Sheets(iSheet).getCellByPosition(oZellAdr.column, oZellAdr.row -1)
	if oZellUeber.value then
	  oZelle.value = oZellUeber.value
	elseIf oZellUeber.string then
	  oZelle.string = oZellUeber.string
	end if
end sub
Verfahren wie gehabt. Kopiert allerdings nur Text und Werte in die Zelle. (Cursor in die Zelle, wo es rein soll, Makro aufrufen, der Wert oder der Text der Zelle direkt darüber wird übernommen).
Formeln werden nicht kopier! (nur die Ergebnisse)

Bis denn
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
belana
Beiträge: 6
Registriert: Do, 30.12.2004 12:55

Hi Tom

Beitrag von belana »

Prima
hat geklappt nur....... da is noch ein kleiner Wurm drin. :oops:
Es werden nur Zahlen von oben nach unten kopiert, aber kein Datum noch Text.
Haste noch ne Idee?

Grüßlis
Belana
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hallo Belana,
.... da is noch ein kleiner Wurm drin.
Upps, da ist doch glatt was duch die Lappen gewischt. Sorry!

Die Zeile elseif muss lauten:

Code: Alles auswählen

elseIf oZellUeber.string <> "" then  
da fehle was. Jetzt wird auch ein Text kopiert.
Das mit dem dem Datum ist so eine Sache: Dieses einfache Makro kopiert keine Zellformate, d.h. ein "echtes" Datum in OOo wird intern als laufende Zahl dargestellt - und die wird kopiert. Schlimmstenfalls musst du die Zellle nachträglich als Datum formatieren. Ist das Datum aber ein "Text", wird es jetzt auch richtig kopiert.

Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
belana
Beiträge: 6
Registriert: Do, 30.12.2004 12:55

Beitrag von belana »

Hi Tom

Ganz lieben Dank für deine Mühe und schnellen antworten.

Es hat prima geklappt.

Grüßlis
Michaela
Antworten