ich habe ein Kombinationsfeld "Uhrzeit" in einer UF.
Im Einzelschrittmodus wird
UserForm1.Uhrzeit.ListRows = IIf(letzte scheinbar korrekt ausgeführt, aber es werden 10 zeilen angezeigt. Unter Eigenschaften von "Uhrzeit" steht bei ListRows 0 !?
Nachfolgend der Code von https://www.herber.de/bbs/user/31761.xls
Achja, in der Anzeige wird aus als Text formatiertem "03:00" in der Tabelle eine Dezimalzahl 0,125, wie verhindere ich das?
Danke und Gruß
Reinhard
Modul1:
Option Explicit
Public letzte As Long
Sub starten()
Load UserForm1
UserForm1.Show
End Sub
Sub ZeitenErstellen()
Dim Stunden As Byte, Minuten As Byte, zei As Long
With Worksheets("Tabelle2")
.Columns("A:A").NumberFormat = "@"
.UsedRange.Clear
For Stunden = 0 To 23
Minuten = 0
While Minuten < 60
zei = zei + 1
.Cells(zei, 1) = Right(CStr("0" & Stunden), 2) & ":" & Right(CStr("0" & Minuten), 2)
Minuten = Minuten + .Range("B1")
If .Range("B1") <= 0 Then Minuten = 60
Wend
Next Stunden
letzte = .Range("A65536").End(xlUp).Row
End With
UserForm1.Uhrzeit.ListRows = IIf(letzte < 25, letzte, 25)
End Sub
Userform1
Option Explicit
Private Sub Taktzeit_Change()
Takt = Taktzeit
Call ZeitenErstellen
End Sub
Private Sub UserForm_Initialize()
Call ZeitenErstellen
End Sub