heute() nicht aktualisieren CALC

spezielle Probleme mit AOO/LO unter Linux

Moderator: Moderatoren

Gerald Ratzmann
Beiträge: 8
Registriert: Fr, 04.11.2005 21:40

heute() nicht aktualisieren CALC

Beitrag von Gerald Ratzmann »

Schönen Tag auch,

ich möchte in einer CALC Vorlage mir das aktuelle Datum ausgeben lassen, allerdings so, daß es bei späterer Bearbeitung nicht mehr aktualisiert wird - wie es analog bei WRITER möglich ist ein fixes Datum per Feldbefehl einzugeben. (Diese Funktion gibt es offensichtlich nicht bei CALC)

Habe mal im Forum gesucht, aber leider keine Antwort gefunden. Gibt's hier einen CALC Freak der die Lösung kennt und diese auch weitergibt ??

Danke !!

Gruß
Gerald
Toxitom
********
Beiträge: 3768
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hey Gerald,

also gut - da es soviel Fragen hierzu schon gab: hier mal eine Lösung:

Nein, eine eingebaute Funktion ist nicht drin. Lässt sich aber ganz leicht selbst verwirklichen.

Die folgende Funktion speichertst du ab in "Meine Makros" - "Standard":

Code: Alles auswählen

function myNow()
	oZell = thisComponent.getcurrentSelection()
	if not oZell.supportsService("com.sun.star.sheet.SheetCell") then
	    msgbox "Bitte nur eine Zelle markieren (aktivieren)!", 48, "Fehler!"
	    exit function
	end if
	oZell.value = now()
	oZell.NumberFormat = 30
end function
Dann gehst du über Extras - Anpassen und weist einem frei wählbaren Tastaturkürzel dieses Makro zu. (Ich hab F3 genutzt, ist in Calc nicht belegt.

Und dann: Cursor in Zelle, F3 drücken (oder eben dein Tastaturkürzel), aktuelles Datum steht in der Zelle - fix.

Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Gerald Ratzmann
Beiträge: 8
Registriert: Fr, 04.11.2005 21:40

Beitrag von Gerald Ratzmann »

Hallo Thomas,

vielen Dank für die Lösung, klappt wunderbar.
Ich kann zwar den Text des Makros lesen, verstehen ist aber nicht. Makroprogrammierung ist halt doch was anderes als "normale" Funktionsnutzung.

Danke nochmal.

Gruß
Gerald
jadebaer
Beiträge: 3
Registriert: Sa, 13.09.2008 19:50

Re: heute() nicht aktualisieren CALC

Beitrag von jadebaer »

Hallo,

bei mir klappt's leider noch nicht. Wenn ich ein neues Makro aufmache sind da schon ein paar Befehle vorhanden.
Wo genau muss ich den kopierten Programm-Code einfügen?

Edit: Habe nochmal rumprobiert. Jetzt funktioniert es. Auch von mir: Vielen Dank.
chrk
*******
Beiträge: 1670
Registriert: Sa, 22.09.2007 18:09

Re: heute() nicht aktualisieren CALC

Beitrag von chrk »

jadebaer hat geschrieben: Edit: Habe nochmal rumprobiert. Jetzt funktioniert es. Auch von mir: Vielen Dank.
Hallo jadebaer,
würdest Du bitte hier: Re: automatisch eingefügtes Datum fixen den Beitrag editieren und die Erfolgsmeldung anfügen. Außerdem könntest Du Deinen ersten Beitrag in dem Thread editieren und den Titel als "[gelöst]" markieren. Das macht es für alle anderen übersichtlicher.
Danke
murxer
Beiträge: 1
Registriert: So, 23.05.2010 20:41

Re: heute() nicht aktualisieren CALC

Beitrag von murxer »

Es ist zwar schon ein über zwei Jahre alter Thread, aber trotzdem gut und *sehr* hilfreich! Habe ihn erst vorhin "ergoogelt". Also Gnade bitte :-)

Wie jadebaer schon schrub, werden beim Öffnen eines neuen Makros ein paar Befehle automatisch eingefügt.
- Einfach alle weglöschen
- Den Code von Toxitom einfügen und seinen weiteren Anweisungen folgen.

Klappt super (bei mir mit [F3] und OpenOffice 3.2.0 OOO320m12/Built:9483 von PortableApps.com).

Mit [F3] kann ich leben, aber das excelkonforme [Strg+.] wäre mir natürlich lieber (altersbedingte Inflexibilität).

Lässt sich da vielleicht doch noch was machen?

Aufgrund meiner Recherchen wohl eher nicht, aber findet google wirklich alles?

Hätte bezüglich [Strg+.] vielleicht jemand einen Tipp oder Link für mich?

LG und *vielen Dank* an Toxitom für seine obige 1A-Makroanleitung!

murxer
turtle47
*******
Beiträge: 1849
Registriert: Mi, 04.01.2006 20:10
Wohnort: Rheinbach

Re: heute() nicht aktualisieren CALC

Beitrag von turtle47 »

Hallo,
Gast hat geschrieben:<Strg>+ist vorbelegt für 'Zellen einfügen'.
Es geht nicht um <Strg> und <Plus> sondern um <Strg> und <Punkt>
denn murxer hat geschrieben:Hätte bezüglich [Strg+.] vielleicht jemand einen Tipp oder Link für mich?
So weit ich das gesehen habe geht das Gewünschte nicht.

Jürgen
Software hat keinen Verstand - benutze deinen eigenen...!

Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
Benutzeravatar
lorbass
********
Beiträge: 4116
Registriert: Mo, 01.05.2006 21:29
Wohnort: Bonn

Re: heute() nicht aktualisieren CALC

Beitrag von lorbass »

murxer hat geschrieben:Hätte bezüglich [Strg+.] vielleicht jemand einen Tipp oder Link für mich?
Mit Winfried Rohrs (komma4) Extension DateTime2 und nach ein bißchen Handarbeit kann ich das aktuelle Datum per [Strg]+[.] in die aktuelle Zelle einfügen.

Die Handarbeit bezieht sich auf die Datei Accelerators.xcu im Verzeichnis ~/.openoffice.org/3/user/registry/data/org/openoffice/Office (Linux) bzw. %APPDATA%/openoffice.org/3/user/registry/data/org/openoffice/Office (Windows). Die sieht bei mir so aus:

Code: Alles auswählen

<?xml version="1.0" encoding="UTF-8"?>
<oor:component-data xmlns:oor="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema" oor:name="Accelerators" oor:package="org.openoffice.Office">
 <node oor:name="PrimaryKeys">
  <node oor:name="Modules">
   <node oor:name="com.sun.star.sheet.SpreadsheetDocument">
...
    <node oor:name="POINT_MOD1" oor:op="replace">
     <prop oor:name="Command">
      <value xml:lang="de">vnd.sun.star.script:DateTime2.DateTime2.Datum_Feld?language=Basic&location=application</value>
     </prop>
    </node>
...
Relevant sind die Zeilen zwischen den beiden Ellipsen (...)

Gruß
lorbass
Antworten