2 Macros in einer Zelle

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

Aga2
Beiträge: 4
Registriert: Do, 28.08.2008 15:24

2 Macros in einer Zelle

Beitrag von Aga2 »

Hallo Calc-Spezialisten,

für die Bearbeitung in Tabellen von OOo-Clac 2.4.0 brauche ich sehr oft
das Tages-Datum im Format >TT.MM.JJJJ< und die Real-Zeit >hh.mm.ss<.
Dafür habe ich zwei Macros in Modul 1 eingefügt.

Macro1 (Datum) hat die Tastencombi Strg+-,
Macro 2 (Zeit) hat die Tastencombi Strg++.

Tastencombi für Zeit wird richtig dargestellt.

Tastencombi für Datum wird nur >TT.MM.JJ< dargestellt ?
Beide Tastencombi in einer Zelle funktioniert auch nicht.

Hier die Macros:
Sub Macro1 ()

dim aktAdress as new com.sun.star.table.CellAddress
dim document, xlSheet as object

document = ThisComponent
'aktuelle Zelle ermitteln
aktAdress=document.getCurrentSelection().getCellAddress()
Set xlSheet = document.Sheets(aktAdress.sheet)

xlSheet.getCellByPosition( aktAdress.column, aktAdress.row).FormulaLocal = Date

end sub

Sub Macro2 ()

dim aktAdress as new com.sun.star.table.CellAddress
dim document, xlSheet as object

document = ThisComponent
'aktuelle Zelle ermitteln
aktAdress=document.getCurrentSelection().getCellAddress()
Set xlSheet = document.Sheets(aktAdress.sheet)

xlSheet.getCellByPosition( aktAdress.column, aktAdress.row).FormulaLocal = Time

End Sub

Wo liegen die Fehler ? Kenne mich mit Macros nur sehr bescheiden aus !

Vielen Dank im Voraus für die Hilfe.
Aga2
Karolus
********
Beiträge: 7535
Registriert: Mo, 02.01.2006 19:48

Re: 2 Macros in einer Zelle

Beitrag von Karolus »

Hallo
Sofern du mit dem Tagesdatum nicht mehr rechnen musst, füg es als Text ein, ändere dazu in der letzten Zeile:
...formulalocal = date auf
...string = date

Ansonsten schau dir mal http://extensions.services.openoffice.o ... /DateTime2 an

Gruß Karo
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Benutzeravatar
lorbass
********
Beiträge: 4116
Registriert: Mo, 01.05.2006 21:29
Wohnort: Bonn

Re: 2 Macros in einer Zelle

Beitrag von lorbass »

Schau dir mal die Extension DateTime2 an, die Winfried Rohr aka komma4 geschrieben hat.

Gruß
lorbass
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: 2 Macros in einer Zelle

Beitrag von komma4 »

Du fügst einen Datumswert ein - und der wird nach dem Gebietsschema formatiert.

sieh' Dir mal meine Signatur an - im Code der Extension findest Du alles nötige, um es in Deinen Makros nachzuvollziehen... wenn Du nicht lieber gleich DateTime2 installierst und anpasst (ein timestamp ist auch dabei :-) )
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Aga2
Beiträge: 4
Registriert: Do, 28.08.2008 15:24

Re: 2 Macros in einer Zelle

Beitrag von Aga2 »

Hallo karolus, lorbas & komma4,
das ging ja flott. Vielen Dank.

Schertzfrage: Gibt es die Links auch für Latein ? :D

@ karolus
Leider muß ich bei formulalocal bleiben.

@ an alle
Ist in Date Time2 auch die Lösung für 2 Macros in eine Zelle enthalten ?

Ich brauche die Ausführung so: [TT.MM.JJJJ hh.mm.ss],
manchmal aber auch einzeln, (Nachtrag)
notfalls kann ich auf das Jahr in Langform verzichten.

Gruß Aga2
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: 2 Macros in einer Zelle

Beitrag von komma4 »

Aga2 hat geschrieben:Ich brauche die Ausführung so: [TT.MM.JJJJ hh.mm.ss],
manchmal aber auch einzeln,
DateTime2 hat geschrieben:Makro-Routinen: Datum_Feld, Datum_Text, Zeit_Feld und Zeit_Text, Zeitstempel_Feld, Zeitstempel_Text
Damit solltest Du auskommen....

Ich habe ISO8601 eingestellt - im Code-Module DateTime2_conf oben.
Die _TEXT-Formate werden weiter unten zusammengebaut.

Viel Erfolg!
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Antworten