Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
888to892
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
888to892
888to892
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zeiten subtrahieren

Zeiten subtrahieren
24.07.2007 16:05:58
Marc85
Hallo,
ich habe ein kleineres oder auch größeres Problem, wäre nett wenn mir jemand bei der behebung behilflich sein könnte!
Und zwar wird in die Spalte A eine Zeit eingetragen, jedoch ohne Doppelpunkt ( z.B. 236 für 2:36 oder 1134 für 11:34) nach der Eingabe soll die Zahl in eine Uhrzeit umgewandelt werden und von der Referenzzeit 12:00, die überall in Spalte B steht abgezogen werden. Das Ergebnis Also B-A soll dann in Spalte C ausgegeben werden. Die in A eingetragene Zeit muss kleiner sein als 12:00!
Habe folgenden Entwurf dazu gemacht!

Public Sub Active_Cell()
Columns(2).Value = "12:00"
Referenzzeit = "12:00"
zahl = ActiveCell
Zeichenanzahl = Len(zahl)
If Zeichenanzahl = 4 Then
Zeichen1 = Mid(zahl, 1, 2)
Zeichen2 = Mid(zahl, 3, 4)
ActiveCell.Value = Zeichen1 & ":" & Zeichen2
Columns(3).Value = "=RC[-1]-RC[-2]"
ElseIf Zeichenanzahl = 3 Then
Zeichen3 = Mid(zahl, 1, 1)
Zeichen4 = Mid(zahl, 2, 3)
ActiveCell.Value = Zeichen3 & ":" & Zeichen4
Columns(3).Value = "=RC[-1]-RC[-2]"
End If
End Sub


Nun ist dieser Entwurf allerdings nur für die Active Zelle programmiert und ich weiß nicht wie ich das programm auf die ganze Spalte A ausbreiten kann!
Außerdem sollte das Programm mit der Enzter Taste ausgelöst werden!
Wäre nett wenn mir jemand helfen kann!
Grüße Marc

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeiten subtrahieren
24.07.2007 16:19:00
Hajo_Zi
Hallo Marc,
hier mal der Code zum umschreiben der Uhrzeit.

Option Explicit
'* H. Ziplies                                     *
'* 28.12.02; 01.10.06                             *
'* erstellt von Hajo.Ziplies@web.de               *
'* http://Hajo-Excel.de/
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Count > 1 Then Exit Sub
Dim RaBereich As Range                      ' Bereich der Wirksamkeit
Dim RaZelle As Range                        ' zur Zeit untersuchte Zelle
Dim InS As Integer                          ' Variable für Stunde
Dim InM As Integer                          ' Variable für Minute
Dim InSe As Integer                         ' Variable für Sekunde
Set RaBereich = Range("D4:E10, H4:H10")     ' Bereich der Wirksamkeit festlegem
'   noch mehr Bereiche
'    Set RaBereich = Union(Range("C7:I26"), Range("L7:R26"), Range("U7:AA26"), Range("AD7:AJ26") _
)
'    ActiveSheet.Unprotect "Password"        ' Schutz der Tabelle aufheben
Application.EnableEvents = False            ' Reaktion auf Zellveränderung abschalten
For Each RaZelle In Range(Target.Address)   ' Schleife falls mehr als eine Zelle mit einmal  _
verändert
If Not Intersect(RaZelle, RaBereich) Is Nothing Then    ' Zelle ist im Bereich der  _
Wirksamkeit
With RaZelle
If .Value  "" Then
If IsNumeric(.Value) And InStr(.Value, ":") = 0 And _
InStr(.Value, ",") = 0 Then
If Len(Target.Value) > 4 Then           ' es wurden Stunden eingeben
InS = Left(.Value, Len(.Value) - 4)
InM = Mid(.Value, Len(.Value) - 3, 2)
InSe = Right(.Value, 2)
ElseIf Len(Target.Value) > 2 Then           ' es wurden keine Stunden  _
eingegeben
InS = 0
InM = Left(.Value, Len(.Value) - 2)
InSe = Right(.Value, 2)
Else                                    ' es wurden nur Sekunden  _
eingegeben
InS = 0
InM = 0
InSe = .Value
End If
.NumberFormat = "[h]:mm:ss"             ' Zellformat setzen
.Value = InS & ":" & InM & ":" & InSe   ' Zeit in Zelle schreiben
End If
End If
End With
End If
Next RaZelle
'    ActiveSheet.protect "Password"          ' Schutz der Tabelle aufheben
Application.EnableEvents = True         ' Reaktion auf Zellveränderung einschalten
End Sub



Anzeige
AW: Zeiten subtrahieren
24.07.2007 17:07:29
Marc85
ist es nicht möglich das von mir geschriebene Programm abzuändern?
Gruss Marc

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige