Momentan arbeite ich an einer Tabelle mit einem Dialog und Macros dafür:
Siehe Anhang Bild
Mir ist etwas interesanntes aufgefallen:
Ich habe ein Zeitfeld erstellt. Egal ob ich ein falsches Zeitformat eingebe wie bsp. "18", zeigt es "18:00" an. Das ist soweit super, denn es soll ja ein Zeitfeld sein mit korrektem Zeitformat ( Formatcheck ist an auf dem Feld)
ABER: Wenn ich meinen Eintrag aus dem Dialog in das Sheet speichere, zeigt es wieder das falsche Format an. Hier mal Beispielcode:
Code: Alles auswählen
REM ***** BASIC *****
Dim oDialog_new_entry As Object
Sub Main()
DialogLibraries.LoadLibrary("Standard")
oDialog_new_entry = CreateUnoDialog(DialogLibraries.Standard.new_entry)
oDialog_new_entry.Execute()
oDialog_new_entry.dispose()
End Sub
Sub save_entry()
ctl_date = oDialog_new_entry.GetControl("ctl_date")
ctl_time = oDialog_new_entry.GetControl("ctl_time")
cell_date = ThisComponent.Sheets(0).getCellRangeByName("A2")
cell_time = ThisComponent.Sheets(0).getCellRangeByName("B2")
cell_date.string = ctl_date.text
cell_time.string = ctl_time.text
oDialog_new_entry.endexecute()
End Sub
Sub abort_entry()
oDialog_new_entry.endexecute()
End Sub
Meine Vermutung ist ja, es liegt an meiner Übergabe sprich: Cell.String = Control.text
Leider kann ich aber nichts richtiges dazu finden, wie ich beispielsweise sowas: Cell.String = Control.time
Vielleicht könnt ihr ja helfen
Bild und Sheet sind im Anhang.
LibreOffice Version 6.1.3.2(x64)