Hallo Lars
Lars Lehmann schrieb:
Hallo zusammen,
Ich suche nach einem Weg die Eingabe von Zeitwerten alla "12:55" zu
beschleunigen. Insbesondere den ständigen wechsel zwischen NUM-Block
und ":" finde ich nervig, weil ich diesen entgegen den Eingaben auf
dem NUM-Block nicht blind hinbekomme.
Meine Idee per Autokorrektur ",," durch ":" ersetzen zu lassen
furchtet nicht, da Korreturen im Wort halt nicht gehen.
Kennt einer von euch einen Weg, wie man Zeitwerte ohne die Eingabe des
":" nur mit Hilfe des Numblock eingeben kann?
Ich kann dir zwei Makrovarianten anbieten, die das Einfügen eines
Doppelpunktes und Umwandeln in Zeitformat hh:mm erledigen.
Variante a. Eingabe 2 bis 4stellig ohne Doppelpunkt (hhmm) min. (mm)
Wandelt einen Selektierten Zellbereich insgesamt um
Sub format_zeit
oSelect=ThisComponent.CurrentSelection
oColumn=oselect.Columns
oRow=oSelect.Rows
For n= 0 To oColumn.getCount-1
For m = 0 To oRow.getCount-1
oCell=oselect.getCellByPosition (n, m)
eintrag = oCell.String
If Len(eintrag) = 4 Then
links = Left(eintrag, 2)
rechts = Right(eintrag, 2)
neu_eintrag = links & ":" & rechts
oCell.String = ""
oCell.NumberFormat = 40
oCell.FormulaLocal = neu_eintrag
End If
If Len(eintrag) = 3 Then
links = Left(eintrag, 1)
rechts = Right(eintrag, 2)
neu_eintrag = links & ":" & rechts
oCell.String = ""
oCell.NumberFormat = 40
oCell.FormulaLocal = neu_eintrag
End If
If Len(eintrag) = 2 Then
'links = Left(eintrag, 2)
rechts = Right(eintrag, 2)
neu_eintrag = "0:" & rechts
oCell.String = ""
oCell.NumberFormat = 40
oCell.FormulaLocal = neu_eintrag
End If
Next m
Next n
End Sub
Variante b
Schliest die Eingabe in eine Zelle ab, selektiert diese, wandelt um und
wechselt nach unten : Eingabe (hhmm) oder (hmm)
sub zeitformat
rem define variables
dim document as object
dim dispatcher as object
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem
dim args2(1) as new com.sun.star.beans.PropertyValue
args2(0).Name = "By"
args2(0).Value = 1
args2(1).Name = "Sel"
args2(1).Value = true
dispatcher.executeDispatch(document, ".uno:GoDown", "", 0, args2())
dim args8(17) as new com.sun.star.beans.PropertyValue
args8(0).Name = "SearchItem.StyleFamily"
args8(0).Value = 2
args8(1).Name = "SearchItem.CellType"
args8(1).Value = 0
args8(2).Name = "SearchItem.RowDirection"
args8(2).Value = true
args8(3).Name = "SearchItem.AllTables"
args8(3).Value = false
args8(4).Name = "SearchItem.Backward"
args8(4).Value = false
args8(5).Name = "SearchItem.Pattern"
args8(5).Value = false
args8(6).Name = "SearchItem.Content"
args8(6).Value = false
args8(7).Name = "SearchItem.AsianOptions"
args8(7).Value = false
args8(8).Name = "SearchItem.AlgorithmType"
args8(8).Value = 1
args8(9).Name = "SearchItem.SearchFlags"
args8(9).Value = 71680
args8(10).Name = "SearchItem.SearchString"
args8(10).Value = "[0-9][0-9]$"
args8(11).Name = "SearchItem.ReplaceString"
args8(11).Value = ":&"
args8(12).Name = "SearchItem.Locale"
args8(12).Value = 255
args8(13).Name = "SearchItem.ChangedChars"
args8(13).Value = 2
args8(14).Name = "SearchItem.DeletedChars"
args8(14).Value = 2
args8(15).Name = "SearchItem.InsertedChars"
args8(15).Value = 2
args8(16).Name = "SearchItem.TransliterateFlags"
args8(16).Value = 1280
args8(17).Name = "SearchItem.Command"
args8(17).Value = 3
dispatcher.executeDispatch(document, ".uno:ExecuteSearch", "", 0, args8())
rem
dim args11(0) as new com.sun.star.beans.PropertyValue
args11(0).Name = "NumberFormatValue"
args11(0).Value = 40
dispatcher.executeDispatch(document, ".uno:NumberFormatValue", "", 0,
args11())
dim args3(1) as new com.sun.star.beans.PropertyValue
args3(0).Name = "By"
args3(0).Value = 1
args3(1).Name = "Sel"
args3(1).Value = false
dispatcher.executeDispatch(document, ".uno:GoUp", "", 0, args3())
dispatcher.executeDispatch(document, ".uno:GoDown", "", 0, args3())
end sub
Gruß Werner
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]