Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
224to228
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
224to228
224to228
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Buttons umbenennen Format H:MM

Buttons umbenennen Format H:MM
27.02.2003 13:18:03
Gonzo
Hallo nochmals,

habe noch ein kleines Problem. Ich benenne meine buttons automatisch nach zwei Zellen um. E50 und E51. Wenn ich aber die Zeit 24:00 Uhr eingebe macht er 0:00 Uhr daraus und fürht dann aber in der Zelle in der ich das Makro ausführe -01.01.1908 00:00:00 aus. Ich benötige aber unbedingt das Format 24:00 Uhr. Wenn ich das Makoro von H:MM in [H]:MM umbenenne (Exel format) geht es auch nicht. Was kann ich machen?

Hier das Makro:
Private Sub Workbook_SheetChange(ByVal Sh As Object, _
ByVal Target As Range)
Dim BL As Worksheet
Dim strCaption As String
Dim i As Integer
Set BL = Sheets(1)
strCaption = Format(BL.Range("E50").Value, "H:MM") & _
" - " & Format(BL.Range("E51").Value, "H:MM")
For i = 1 To 5
Worksheets(i).CommandButton1.Caption = strCaption
Next i

Gruß und Dank
Gonzo

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Buttons umbenennen Format H:MM
27.02.2003 14:17:07
udo

Hi ,
ich kenne diesen Umstand ebenfalls, hatte ein ähnliches Problemchen.
Mir ist dann nur klar geworden dass der tag nunmal leider keine 25 Stunden hat sondern wie du weist nur 24. deshal muss er nach 23:59 wieder auf 00:00 umspringen.

wenn es dir nur um die Std-Ansicht 24:00 geht macht das ja auch leider keinen Sinn da es beispielsweise 24:22 nicht gibt sondern nur 0:22

Ich hab dir wenigstens eine Erleichterung zur zeiteingabe ohne Doppelpunkt anzubieten ( dazu vier zahlen nacheinander in deine Zelle eingeben bsp. 1200 wird dann automatisch zu 12:00 )

ist ja auch schon mal was,
vielleicht hilfts dir, Gruß udo


Private Sub Worksheet_Change(ByVal Target As Range)
Dim sTxt As String
If Target.Column < 5 Or Target.Column > 21 Then Exit Sub
If IsEmpty(Target) Or Selection.Cells.Count > 1 Then Exit Sub
sTxt = CStr(Target.Value)
Select Case Len(sTxt)
Case 3: sTxt = "0" & sTxt & "00"
Case 4: sTxt = sTxt & "00"
Case 5: sTxt = "0" & sTxt
End Select
sTxt = Left(sTxt, 2) & ":" & Mid(sTxt, 3, 2) & ":" & Right(sTxt, 2)
On Error GoTo ERRORHANDLER
Application.EnableEvents = False
Target.Value = TimeValue(sTxt)
Application.EnableEvents = True
Exit Sub
ERRORHANDLER:
ActiveCell.ClearContents
Application.EnableEvents = True
End Sub


du must dann noch die Spalten im Makro an deine Tabelle anpassen , bei mir sind es die Spalten 5 - 21 wie du siehst.
das ganze Makro kopierst du dann einfach in den Code deines Tabellenblattes. Tabellenblatt dazu mit rechter Taste anklicken - dann CODE anzeigen und dort das makro einfügen.

Müsste dann funktionieren , viel spass damit :-)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige