Seite 1 von 1

Makro Datum und Zeit

Verfasst: Di, 24.06.2008 19:32
von WorstCases
Hallo Leute,

ich habe mir ein einfaches Makro geschrieben, dass Datum und Zeit ausgeben soll.
Es gibt Datum und Zeit aus, jedoch falsch.

Beispiel:
Meine Lokalzeit ist 24.06.08, 12:23.
Das ausgegebee Datum und Zeit ist 16.12.2008, 04:23.

Hier mal mein Code:

Code: Alles auswählen

Sub Datum_Zeit()

Dim Datumswert as date
Dim Zeitwert as date

Datumswert = date()
Zeitwert = time()

ThisComponent.CurrentSelection.FormulaLocal = datumswert & zeitwert

End Sub
Das interessante ist, wen ich nur Datum oder Zeit ausgeben lasse, wir mird meine richtige Systemzeit angezeigt... Ich brauche aber beides in einer Zelle: JJ.MM.TT_HH:MM:SS
Nur vorweg: Ich weiß, dass es das Makro DateTime2 gibt. Für meine Zwecke ist mir das aber an Möglichkeiten einfach zu überladen. Ich als "nicht-Programmierer" steige einfach durch den Code nicht durch - daher brauche ich etwas einfacheres, was auch für mich verständlich ist.

Ich habe irgendwie die Vermutung, das das Problem in folgender Codezeile liegt:

Code: Alles auswählen

ThisComponent.CurrentSelection.FormulaLocal = datumswert & zeitwert
Ich sage ja sozusagen Datum + Zeit. Rechnert Basic da irgend ewas zusammen, dass es auf diese Zahlen kommt, die mir ausgegeben werden? Ichhabe schon versucht Datum und Zeit bei der Ausgabe anstatt mit dem "&" mit "," zu trennen etc. Aber das generiert lediglich Laufzeitfehler.
Wer kann mir sagen, wo mein Fehler leigt?

Gruß.
WorstCases

Re: Makro Datum und Zeit

Verfasst: Di, 24.06.2008 20:15
von turtle47
Hallo WorstCases,

Code: Alles auswählen

ThisComponent.CurrentSelection.FormulaLocal = datumswert & " " & zeitwert
sollte es tun.

Jürgen

Re: Makro Datum und Zeit

Verfasst: Di, 24.06.2008 21:39
von WorstCases
Mann, die Lösung ist manchmal wirklichzu einfach... :D
Danke Dir für den Tipp (mal wieder)!

Gruß.
WorstCases

Re: Makro Datum und Zeit

Verfasst: Di, 24.06.2008 22:08
von chrk
Hallo zusammen,
ich bin mal ein Bisschen neugierig. Was passiert da eigentlich?

Jürgens Korrektur ist klar:

Code: Alles auswählen

datumswert & " " & zeitwert
ist eine Stringverkettung, und deshalb werden die beiden Datumsdatentypen gewandelt und dann verkettet.

Aber was macht der &-Operator in

Code: Alles auswählen

datumswert & zeitwert
Er gibt eine Dezimalzahl als interne Rerpräsentation eines Datums-/Zeitwertes zurück.