Zeiten sortieren (kkleinste)
Verfasst: Fr, 18.05.2007 18:34
Hallo ich suche ne Möglichkeit die kleinste Zeit zu ermitteln.
Die Zeit liegt im Format MM:SS,000 vor.
Wenn ich wie hier im Forum schonmal vorgeschlagen kkleinste nehme erhalte ich nur den Fehler #WERT!
Das ganze geht aber noch weiter. Dann brauche ich den Index der Zeile und die Werte dazu. Ich hab es auch schon via Makro versucht, welches ich dann automatisch starte wenn jemand den Button "Neue Runde" drückt. Doch ich bekam immer nur eine leere Zeichenkette zurück.

Die Zeit liegt im Format MM:SS,000 vor.
Wenn ich wie hier im Forum schonmal vorgeschlagen kkleinste nehme erhalte ich nur den Fehler #WERT!
Das ganze geht aber noch weiter. Dann brauche ich den Index der Zeile und die Werte dazu. Ich hab es auch schon via Makro versucht, welches ich dann automatisch starte wenn jemand den Button "Neue Runde" drückt. Doch ich bekam immer nur eine leere Zeichenkette zurück.
Code: Alles auswählen
sub F2GetBestRound
dim bestTime as date
dim bestRoundRow as integer
bestTime = "99:99,999"
oCalc = thisComponent
oSheet = oCalc.sheets().getByName("SetupManager")
oCellRange = osheet.getCellRangeByName("AB18:AB29")
'auslesen der Eckpunkte
iErsteZeile = oCellRange.rangeAddress.startRow
iLetzteZeile = oCellRange.rangeAddress.EndRow
'Schleife über die Zeilen im Sheet
For i = iErsteZeile to iLetzteZeile
oCell=osheet.getcellrangebyName("AB"&i+1)
currentRoundTime = oCell.String
if currentRoundTime < bestTime Then
bestTime = currentRoundTime
bestRoundRow = i+1
end if
next i
oSheet.getcellrangebyName("Q30").string =oSheet.getcellrangebyName("Q"&bestRoundRow).string
oSheet.getcellrangebyName("S30").string = oSheet.getcellrangebyName("S"&bestRoundRow).string
oSheet.getcellrangebyName("U30").string = oSheet.getcellrangebyName("U"&bestRoundRow).string
oSheet.getcellrangebyName("W30").string = oSheet.getcellrangebyName("W"&bestRoundRow).string
oSheet.getcellrangebyName("Y30").string = oSheet.getcellrangebyName("Y"&bestRoundRow).string
oSheet.getcellrangebyName("AB30").string = oSheet.getcellrangebyName("AB"&bestRoundRow).string
end sub
