Option
Explicit
Private
Const
WORKSHEET_NAME
As
String
=
"Tabelle1"
Private
Const
WORKSHEET_COLUMN
As
String
=
"A"
Private
Const
WORKSHEET_COLUMN_STATUS
As
String
=
"B"
Private
Const
WORKSHEET_COLUMN_STATUS_DETAILED
As
String
=
"C"
Private
Const
WORKSHEET_COLUMN_STATUS_TIME
As
String
=
"D"
Private
Const
TIME_FORMAT
As
String
=
"dd.mm.yyyy Hh:Nn:Ss"
Public
Sub
add_datetime(
ByVal
Statustext
As
String
,
Optional
ByVal
Detailtext
As
String
= vbNullString,
Optional
ByVal
markieren
As
Boolean
=
False
)
Dim
wks
As
Worksheet
Dim
l
As
Long
Set
wks = Worksheets(WORKSHEET_NAME)
With
wks
l = .Cells(.Rows.Count, WORKSHEET_COLUMN).
End
(xlUp).Row + 1
.Cells(l, WORKSHEET_COLUMN).Value = Format(Now, TIME_FORMAT)
.Cells(l, WORKSHEET_COLUMN_STATUS).Value = Statustext
.Cells(l, WORKSHEET_COLUMN_STATUS_DETAILED).Value = Detailtext
If
Not
.Cells(l - 1, WORKSHEET_COLUMN) = vbNullString
Then
.Cells(l, WORKSHEET_COLUMN_STATUS_TIME).Value = DateDiff(
"s"
, TimeValue(.Cells(l - 1, WORKSHEET_COLUMN).Value), TimeValue(.Cells(l, WORKSHEET_COLUMN).Value), vbUseSystemDayOfWeek, vbUseSystem)
End
If
.UsedRange.Columns.AutoFit
If
markieren
Then
.Range(.Cells(l, WORKSHEET_COLUMN), .Cells(l, WORKSHEET_COLUMN_STATUS_DETAILED)).Interior.Color = vbRed
End
If
End
With
Set
wks =
Nothing
End
Sub
Sub
Schaltfläche2_Klicken()
Call
add_datetime(
"i.O."
)
End
Sub
Sub
Schaltfläche3_Klicken()
UserForm2.Show vbModeless
End
Sub