jo-1983
Goto Top

Mit VBScript einfache Arbeitszeit berechnen. Mit Mittagspause

Hallo zusammen,

ich weiß das ich mit CDate Funktionen und TimeValue das Ziel irgendwie erreich kann ... leider erreiche ich es aber nicht.

Ich habe folgendes Szenario welches ich, leider, aktuell nicht gelöst bekomme:

Ich möchte per Input Fenstern (klappt auch) meine Arbeitszeit berechnen.

--> szArbeitsBeginn = Beginn der Arbeit
--> szPauseAnfang = Beginn der Mittagspause
--> szPauseEnde = Ende der Mittagspause

Berechnet werden soll:

--> szPausenDauer = Pausenlänge

--> szHbisJetzt = wieviel Stunden ich bereits gearbeitet habe

--> szSollerreicht = um wieviel Uhr ich mein Arbeitssoll von 8h erreicht habe


in meinem bisherigen Skript schaffe ich es auch in etwa die Werte zu erreichen allerdings funktioniert meine Umrechnung von , auf Uhrzeit nicht und ich bekomm die Formel für die "Um wieveil Uhr sind meine 8h erreicht" nicht hin.


So - jetzt paste ich mein bisheriges Skript mal hier rein und hoffe das mir einer helfen kann.


Dim szSollH, szArbeitsBeginn, szPauseAnfang, szPauseEnde, szPausenDauer, szHbisJetzt, szSollerreicht
Dim szFinalMessage
szSollH = "8:00:00"
szArbeitsBeginn = InputBox("Eingestempelt um ", "Arbeitszeit", "08:00")
if szArbeitsBeginn = "" then
else
szPauseAnfang = TimeValue(InputBox("Pause Anfang", "Arbeitszeit", "11:15"))
szPauseEnde = TimeValue(InputBox("Pause Ende", "Arbeitszeit", "13:00"))
' Rechne
' Pausenlänge
szPausenDauer = DateDiff("n", szPauseAnfang, szPauseEnde) / 60
szFinalMessage = "Mittagspause: " & vbTab & szPausenDauer & "h" & vbcrlf
' Bis jetzt gearbeitet
szHbisJetzt = DateDiff("n", TimeValue(szArbeitsBeginn), TimeValue(Now())) / 60
szFinalMessage = szFinalMessage & "Arbeitszeit bisher: " & vbTab & szHbisJetzt & "h" & vbcrlf
' Wann ist Soll erreicht
'szSollerreicht = TimeValue(szSollH) + TimeValue(szArbeitsBeginn) + szPausenDauer
szSollerreicht = TimeValue(szSollH) + TimeValue(szArbeitsBeginn) + szPausenDauer
szFinalMessage = szFinalMessage & "Soll erreicht um: " & vbTab & TimeValue(szSollerreicht) & "Uhr" & vbcrlf
' Ausgabe
wscript.echo szFinalMessage
end if

Das ganze sieht in meinem Editor etwas schöner aus:

da5c90371548ce435cf63685b312007b

Content-Key: 204489

Url: https://administrator.de/contentid/204489

Printed on: April 19, 2024 at 22:04 o'clock

Member: bastla
bastla Apr 05, 2013 updated at 16:52:30 (UTC)
Goto Top
Hallo JO-1983 und willkommen im Forum!

Versuch es als Anhaltpunkt einmal mit folgenden Zeilen 13 und 14:
szPausenDauer = szPauseEnde - szPauseAnfang
szFinalMessage = "Mittagspause: " & vbTab & FormatDateTime(szPausenDauer, 4) & " h" & vbcrlf  
- da Du in den Variablen ja bereits Zeitwerte hast, ist es nicht sinnvoll, auf Minuten (Stunden) zu konvertieren.

Grüße
bastla

P.S.: So schön wie in Deinem Editor wird Code hier zwar nicht dargestellt, aber mit Verwendung von <code>- / </code>-Tags sieht er zumindest etwas besser aus (und ist aufgrund der Zeilennummern auch leichter zu referenzieren) ...
Mitglied: 76109
76109 Apr 05, 2013 updated at 18:06:36 (UTC)
Goto Top
Hallo JO-1983!

Der Vollständigkeit halberface-wink

Um den Variablen den Datentyp Zeit zuzuweisen, verwendest Du entweder die Funktion 'TimeValue' oder 'CDate' Intern haben Datums- und Zeitangaben den Datentyp Double, wobei das Datum >= 1 und Zeit < 1 (1 sekunde = 1/86400). D.h., dass Du mit den Werten ganz normal rechnen kannst, wenn der Zeit-Text in das entsprechende Zahlenformat umgewandelt wird.

Mit DateDiff berechnest Du ja nur Intervalle in Stunden (h), Minuten (n) oder Sekunden (s)

dArbeitszeit = TimeValue("8:00")  
dArbeitsBegin = TimeValue("8:00")   '  
dPausenBegin = TimeValue("11:15")  
dPausenEnde = TimeValue("13:00")  
    
dArbeitsEnde = CDate(dArbeitsBegin + dArbeitszeit + dPausenEnde - dPausenBegin)
    
MsgBox dArbeitsEnde

Gruß Dieter
Member: bastla
bastla Apr 05, 2013 updated at 17:35:19 (UTC)
Goto Top
@ Dieter
Danke für die Ergänzug face-smile

Magst Du noch
Zeit <= 0
(und auch
Datum > 0
) korrigieren?

Grüße
bastla
Mitglied: 76109
76109 Apr 05, 2013 updated at 18:07:28 (UTC)
Goto Top
Hallo bastla!

Sorry, stehe gerade auf der Leitung?face-sad

Gruß Dieter

[edit] ist mir doch noch was dazu eingefallen (korrigiert...?)face-smile [/edit]
Member: bastla
bastla Apr 05, 2013 updated at 18:15:28 (UTC)
Goto Top
Hallo Dieter!

Yep. face-smile

Grüße
bastla
Member: JO-1983
JO-1983 Apr 05, 2013 at 21:08:55 (UTC)
Goto Top
Hallo und vielen Dank für die schnelle Reaktion von euch!

... auch Danke für die "Willkommen Grüße" face-smile

Ich hatte es heute Abend tatsächlich noch lösen können.
Am Montag werde ich den Code posten da ich den nicht hier habe.

Kurz: ich hab tatsächlich dann mit den Minuten weiter gerechnet und bzgl. der Sollstunden noch eine Lösung gefunden.

Also am Montag mehr ...
Member: JO-1983
JO-1983 Apr 08, 2013 at 06:13:40 (UTC)
Goto Top
Guten Morgen zusammen,

die Lösung ist, wie von euch schon als Tipp gegeben, hier in Minuten zu rechnen.

Der Code sollte selbsterklärend sein.

Vielen Dank für euren schnellen Support face-smile

 '***************************************  
' Arbeitszeit  
'***************************************  
Sub Sub_Arbeitszeit()
Dim szSollH, szSollH2, szArbeitsBeginn, szPauseAnfang, szPauseEnde, szPausenDauerMinuten
Dim szArbeitsZeitMinuten, szSollerreicht, szFinalMessage, szEchteArbeitszeit
szSollH = "7:30"  
szArbeitsBeginn = InputBox(vbcrlf & vbcrlf & "Eingestempelt um ", "Arbeitszeit", "07:17")  
if szArbeitsBeginn = "" OR len(szArbeitsBeginn) < 3 then  
else
	szPauseAnfang = InputBox(vbcrlf & vbcrlf & "Pause Anfang", "Arbeitszeit", "11:48")  
	if szPauseAnfang = "0" then  
		szPauseAnfang = TimeValue("00:00")  
		szPauseEnde = "00:00"  
	else
		szPauseEnde = TimeValue(InputBox(vbcrlf & vbcrlf & "Pause Ende", "Arbeitszeit", "12:44"))  
	end if
	' **************** Rechne  
	' 	Pausenlänge  
	szPausenDauerMinuten = DateDiff("n", szPauseAnfang, szPauseEnde)  
	szFinalMessage = "Mittagspause: " & vbTab & szPausenDauerMinuten / 60 & " h" & vbcrlf  
	' 	Bis jetzt gearbeitet  
	szArbeitsZeitMinuten = DateDiff("n", TimeValue(szArbeitsBeginn), TimeValue(Now())) - szPausenDauerMinuten			  
	szEchteArbeitszeit = szArbeitsZeitMinuten / 60
	szFinalMessage = szFinalMessage & "Arbeitszeit bisher: " & vbTab & szEchteArbeitszeit & "h" & vbcrlf  
	'	Wann ist Soll erreicht  
	szSollH2 = DateAdd("n", szPausenDauerMinuten, szSollH)  
	szSollerreicht = TimeValue(szArbeitsBeginn) + TimeValue(DateAdd("n", szPausenDauerMinuten, szSollH))  
	szFinalMessage = szFinalMessage & "Soll erreicht: " & vbTab & szSollerreicht & " Uhr" & vbcrlf  
	' **************** Rechne  
	' Ausgabe  
	wscript.echo szFinalMessage
end if
End Sub
Member: JO-1983
JO-1983 Apr 08, 2013 at 11:59:41 (UTC)
Goto Top
Hallo,

jetzt muss ich doch noch Mal was fragen:

wie mache ich aus einer 2,75 eine Ausgabe mit 02:45h

???
Member: bastla
bastla Apr 08, 2013 at 13:34:16 (UTC)
Goto Top
Hallo JO-1983!
die Lösung ist, wie von euch schon als Tipp gegeben, hier in Minuten zu rechnen.
Der Tipp war zwar nicht, in Minuten zu rechnen, sondern einfach direkt die Zeitwerte zu addieren / subtrahieren, aber wenn's auch so passt ... face-smile
wie mache ich aus einer 2,75 eine Ausgabe mit 02:45h
Schau Dir (nochmals) die Zeile 2 meines Ansatzes ganz oben an ...

Grüße
bastla
Member: JO-1983
JO-1983 Apr 08, 2013 updated at 18:45:07 (UTC)
Goto Top
Hallo bastla,

danke und jetzt hab ich es tatsächlich kapiert.

Mein Skript hab ich jetzt komplett nach deiner Idee umgeschrieben!

So ein quatsch von mir alles in Minuten etc.. zu rechnen. Mit CDate lässt sich ja (wenn die Werte als TimeValue deklariert sind) richtig gut rechnen.

Jetzt finde ich mein Skript richtig top - auch das Ergebnis sieht richtig ordentlich aus.

Vielen Dank an Dich face-smile !

 '***************************************  
' Arbeitszeit  
'***************************************  
'Sub Sub_Arbeitszeit()  
Dim dSollH, dArbeitsBeginn, dPauseEnde, dPausenlaenge, dAktuelleArbeitszeit, szFinalMessage, dSollerreicht
dSollH = TimeValue("7:30")  
dSollHFr = TimeValue("6:00")  
dArbeitsBeginn = InputBox(vbcrlf & vbcrlf & "Eingestempelt um ", "Arbeitszeit", "")  
if dArbeitsBeginn = "" OR len(dArbeitsBeginn) < 3 then  
else
	' prüfen ob : mit angegeben wurde  
	if instr(dArbeitsBeginn,":") = 0 then  
		dArbeitsBeginn = left(dArbeitsBeginn,len(dArbeitsBeginn)-2) & ":" & right(dArbeitsBeginn,2)  
	end if
	dArbeitsBeginn = TimeValue(dArbeitsBeginn)
	dPauseAnfang = InputBox(vbcrlf & vbcrlf & "Pause Anfang", "Arbeitszeit", "0")  
	if dPauseAnfang = "" OR len(dPauseAnfang) < 3 then  
		dPauseAnfang = TimeValue("00:00")  
	else
		' prüfen ob : mit angegeben wurde  
		if instr(dPauseAnfang,":") = 0 then  
			dPauseAnfang = left(dPauseAnfang,len(dPauseAnfang)-2) & ":" & right(dPauseAnfang,2)  
		end if
		dPauseAnfang = TimeValue(dPauseAnfang)
		dPauseEnde = InputBox(vbcrlf & vbcrlf & "Pause Ende", "Arbeitszeit", "")  
		' prüfen ob : mit angegeben wurde  
		if instr(dPauseEnde,":") = 0 then  
			dPauseEnde = left(dPauseEnde,len(dPauseEnde)-2) & ":" & right(dPauseEnde,2)  
		end if
		dPauseEnde = TimeValue(dPauseEnde)
	end if
	' **************** Rechne  
	' 	Pausenlänge  
	dPausenlaenge = CDate(dPauseEnde - dPauseAnfang)
	szFinalMessage = "Mittagspause: " & vbTab & FormatDateTime(dPausenlaenge, 4) & "h" & vbcrlf  
	' 	Bis jetzt gearbeitet  
	dAktuelleArbeitszeit = CDate((TimeValue(Now()) - dArbeitsBeginn) - dPausenlaenge)
	szFinalMessage = szFinalMessage & "Arbeitszeit bisher: " & vbTab & FormatDateTime(dAktuelleArbeitszeit, 4) & "h" & vbcrlf  
	'	Wann ist Soll erreicht  
	dSollerreicht = CDate(dArbeitsBeginn + dSollH + dPausenlaenge)
	szFinalMessage = szFinalMessage & "Soll erreicht: " & vbTab & FormatDateTime(dSollerreicht, 4) & "Uhr" & vbcrlf  
	'   bis dahin sind es noch bzw. drüber   
	if TimeValue(Now()) > dSollerreicht then
		dZeitbisSoll = CDate(TimeValue(Now()) - dSollerreicht)	
		szFinalMessage = szFinalMessage & "schon drüber mit: " & vbTab & FormatDateTime(dZeitbisSoll, 4) & "h" & vbcrlf  
	else
		dZeitbisSoll = CDate(TimeValue(Now()) - dSollerreicht)
		szFinalMessage = szFinalMessage & "das dauert noch: " & vbTab & FormatDateTime(dZeitbisSoll, 4) & "h" & vbcrlf  
	end if
	'   ist heute Freitag?  
	If weekday(Date()) = vbFriday then
		dSollerreicht = CDate(dArbeitsBeginn + dSollHFr + dPausenlaenge)
		szFinalMessage = szFinalMessage & vbcrlf & "heute Ende um: " & vbTab & FormatDateTime(dSollerreicht, 4) & "Uhr" & vbcrlf  
	end if
	' **************** Rechne  
	' Ausgabe  
	MsgBox szFinalMessage, 27,"Arbeitszeit"  
end if
'End Sub  
Member: bastla
bastla Apr 08, 2013 updated at 19:21:24 (UTC)
Goto Top
Hallo JO-1983!

Ein Tipp: Wenn Du den gleichen Programmteil dreimal verwendest, bietet es sich eigentlich schon an, ein "Sub" oder, wie hier, eine "Function" daraus zu machen - Du könntest daher die Zeilen 12 - 16 durch
dArbeitsBeginn = GetTime(dArbeitsBeginn)
21 - 25 durch
dPauseAnfang = GetTime(dPauseAnfang)
und 27 - 31 durch
dPauseEnde = GetTime(dPauseEnde)
ersetzen und am Ende des Scripts
Function GetTime(dZeit) ' prüfen ob : mit angegeben wurde  
If InStr(dZeit, ":") = 0 Then dZeit = Left(dZeit, Len(dZeit) - 2) & ":" & Right(dZeit, 2)  
GetTime = TimeValue(dZeit)
End Function
hinzufügen.
Was jedenfalls noch fehlt ist als erste Zeile
Option Explicit
- so machen nämlich die Variablendeklarationen auch Sinn, da Du dann nicht nur bemerkst, dass zB "dSollHFr" nicht deklariert wurde, sondern auch auf Schreibfehler in Variablennamen aufmerksam wirst (weil die falsch geschriebene Variable als "undefined" erkannt wird) ...

Grüße
bastla
Member: JO-1983
JO-1983 Apr 08, 2013 updated at 19:51:05 (UTC)
Goto Top
Hallo bastla,

auch dafür wieder ein dickes Danke !!!
das bastel ich morgen zusammen.
Top Idee mit der Function - macht das ganze schick - setz ich so morgen auch um!

Gruß
JO-1983
Member: JO-1983
JO-1983 May 29, 2013 at 12:49:09 (UTC)
Goto Top
Ich möchte gerne mein aktuelles Skript hier posten.
Es kann mittlerweile auch Outlook Einträge erstellen. Das erinnert dann an das erreichen der Arbeitszeit face-smile

- 


' *******************************************************************************************  
' Arbeitszeitrechner  
'   
' erstellt: 10.04.2013 TSi   
' geändert: 17.05.2013 TSi - Freitagsanzeige angepasst | vbFriday  
' geändert: 29.05.2013 TSi/JB - Outlook Termin erstellen | Sub_OutlookTermin  
' geändert:   
' geändert:   
' *******************************************************************************************  
 
Option Explicit
' Registry Handling  
Const cHKCU = &h80000001
Const cHKLM = &h80000002
Const cHKCR = &h80000000
' File Handling  
Const cForReading = 1
Const cForWriting = 2
Const cForAppending = 8
Const cTristateUseDefault = -2
Const cTristateTrue = -1
Const cTristateFalse = 0
' DialogBox Handling  
Const cICON_STOP = 16 ' display the ERROR/STOP icon.  
Const cICON_QUESTION = 32 ' display the '?' icon  
Const cICON_WARN = 48 ' display a '!' icon.  
Const cICON_INFO =  64 ' displays "info" icon.  
Const cBUTTON_OK = 0 ' OK button only  
Const cBUTTON_CANCEL = 1 ' OK and Cancel buttons  
Const cBUTTON_ABORTRETRYIGNORE = 2 ' Abort, Retry, and Ignore buttons  
Const cBUTTON_YESNOCANCEL = 3 ' Yes, No, and Cancel buttons  
Const cBUTTON_YESNO = 4 ' Yes and No buttons  
Const cBUTTON_RETRYCANCEL = 5 ' Retry and Cancel buttons  
Const cDEFBUTTON1 = 0 ' First button is default  
Const cDEFBUTTON2 = 256 ' Second button is default  
Const cDEFBUTTON3 = 512 ' Third button is default  
Const cIDOK = 1 ' OK button clicked  
Const cIDCANCEL = 2 ' Cancel button clicked  
Const cIDABORT = 3 ' Abort button clicked  
Const cIDRETRY = 4 ' Retry button clicked  
Const cIDIGNORE = 5 ' Ignore button clicked  
Const cIDYES = 6 ' Yes button clicked  
Const cIDNO = 7 ' No button clicked  
' ADS Handling  
Const ADS_PROPERTY_CLEAR = 1
Const ADS_SCOPE_SUBTREE = 2

' Objekte anlegen  
Dim objShell, objFileSystem, objNetwork, objReg, szSystemroot
 
Set objShell = CreateObject("WScript.Shell")  
Set objFileSystem = CreateObject("Scripting.FileSystemObject")  
Set objNetwork = CreateObject("WScript.Network")  
Set objReg = GetObject("winmgmts:\\.\root\Default:StdRegProv")  
	
	' Start  
	Call Sub_Arbeitszeit()
	
' Objekte löschen  
WScript.DisconnectObject(objShell)
WScript.DisconnectObject(objFileSystem)
WScript.DisconnectObject(objNetwork)
WScript.DisconnectObject(objReg)
 
' Wscript.Sleep(1000)  
WScript.Quit	
	
'***************************************  
' Arbeitszeit  
'***************************************  
Sub Sub_Arbeitszeit()
	Dim dSollH, dSollHFr, dArbeitsBeginn, dPauseEnde, dPauseAnfang, dPausenlaenge, dAktuelleArbeitszeit, szFinalMessage, dSollerreicht, dZeitbisSoll, szUserChoice
	dSollH = TimeValue("7:30")  
	dSollHFr = TimeValue("6:00")  
	dArbeitsBeginn = InputBox(vbcrlf & vbcrlf & "Eingestempelt um ", "Arbeitszeit", "")  
	if dArbeitsBeginn = "" OR len(dArbeitsBeginn) < 3 then  
	else
		dArbeitsBeginn = GetTime(dArbeitsBeginn) ' prüfen ob : drin ist  
		dPauseAnfang = InputBox(vbcrlf & vbcrlf & "Pause Anfang", "Arbeitszeit", "0")  
		if dPauseAnfang = "" OR len(dPauseAnfang) < 3 then  
			dPauseAnfang = TimeValue("00:00")  
		else
			dPauseAnfang = GetTime(dPauseAnfang) ' prüfen ob : mit angegeben wurde  
			dPauseEnde = InputBox(vbcrlf & vbcrlf & "Pause Ende", "Arbeitszeit", "")  
			dPauseEnde = GetTime(dPauseEnde) ' prüfen ob : mit angegeben wurde  
		end if
		' **************** Rechne ****************  
		dPausenlaenge = CDate(dPauseEnde - dPauseAnfang)' Pausenlänge  
		szFinalMessage = "Mittagspause: " & vbTab & FormatDateTime(dPausenlaenge, 4) & "h" & vbcrlf  
		dAktuelleArbeitszeit = CDate((TimeValue(Now()) - dArbeitsBeginn) - dPausenlaenge)' Bis jetzt gearbeitet  
		szFinalMessage = szFinalMessage & "Arbeitszeit bisher: " & vbTab & FormatDateTime(dAktuelleArbeitszeit, 4) & "h" & vbcrlf  
		dSollerreicht = CDate(dArbeitsBeginn + dSollH + dPausenlaenge)' Wann ist Soll erreicht  
		szFinalMessage = szFinalMessage & "Soll erreicht: " & vbTab & FormatDateTime(dSollerreicht, 4) & "Uhr" & vbcrlf  
		if TimeValue(Now()) > dSollerreicht then' bis dahin sind es noch bzw. drüber   
			dZeitbisSoll = CDate(TimeValue(Now()) - dSollerreicht)    
			szFinalMessage = szFinalMessage & "schon drüber mit: " & vbTab & FormatDateTime(dZeitbisSoll, 4) & "h" & vbcrlf  
		else
			dZeitbisSoll = CDate(TimeValue(Now()) - dSollerreicht)
			szFinalMessage = szFinalMessage & "das dauert noch: " & vbTab & FormatDateTime(dZeitbisSoll, 4) & "h" & vbcrlf  
		end if
		If weekday(Date()) = vbFriday then' ist heute Freitag?  
			dSollerreicht = CDate(dArbeitsBeginn + dSollHFr + dPausenlaenge)
			szFinalMessage = szFinalMessage & vbcrlf & "heute Ende um: " & vbTab & FormatDateTime(dSollerreicht, 4) & "Uhr" & vbcrlf  
			dZeitbisSoll = CDate(TimeValue(Now()) - dSollerreicht)
			szFinalMessage = szFinalMessage & "das dauert noch: " & vbTab & FormatDateTime(dZeitbisSoll, 4) & "h" & vbcrlf  
		end if
		' **************** Finale Ausgabe ****************  
		'MsgBox szFinalMessage, cICON_INFO,"Arbeitszeit" ' Ausgabe  
		'PCListe = InputBox("Body", "Arbeitszeit" ,"TXT")  
		szUserChoice = MsgBox(szFinalMessage & vbcrlf & "Soll erreicht Zeit in Outlook eintragen?", cICON_INFO + cBUTTON_YESNO + cDEFBUTTON2,"Arbeitszeit")  
		' **************** Outlook Termin setzen ***************  
		if szUserChoice = cIDYES then
			Call Sub_OutlookTermin(dSollerreicht)
		end if
	end if
End Sub

'***************************************  
' Outlook Termin setzen  
'***************************************  
Sub Sub_OutlookTermin(szUhrzeit)
	Dim objOutlook, apptOutApp, objNamespace, objFolder, colItems, objItem, strFilter, colFilteredItems
	
	Set objOutlook = CreateObject("Outlook.Application")  
	Set objNamespace = objOutlook.GetNamespace("MAPI")  
	Set objFolder = objNamespace.GetDefaultFolder(9)
	' alten Termin suchen und löschen  
	Set colItems = objFolder.Items
	strFilter = "[Start] >= '" & date()-5 & "' AND [Start] <= '" & date()+1 & "'"   ' damit löscht er den Termin der letzten 5 Tage!   
	Set colFilteredItems = colItems.Restrict(strFilter)
	For Each objItem in colFilteredItems
		if instr(objItem.Subject,"done") AND instr(objItem.Body,"##$$§&&%%") then  
			objItem.Delete
		end if
	Next
	' neuen Termin heute erstellen  
	Set apptOutApp = objOutlook.CreateItem(1) 
	With apptOutApp 
		'.Start = date() & " " & Hour(Now()) & ":" & Minute(Now())  
		.Start = date() & " " & szUhrzeit  
		.Subject = "done"  
		.Body = "##$$§&&%%"  
		.Location = ""  
		.Duration = "0"  
		.ReminderMinutesBeforeStart = 0
		.ReminderPlaySound = False
		.ReminderSet = True
		.Sensitivity = 2
		.Save
	End With

	Set apptOutApp = Nothing
	Set objOutlook = Nothing
	Set objFolder = Nothing
	Set objNamespace = Nothing
	' http://msdn.microsoft.com/en-us/library/office/aa210899(v=office.11).aspx  
	' http://blogs.technet.com/b/heyscriptingguy/archive/2008/02/21/how-can-i-set-a-reminder-on-all-my-outlook-appointments.aspx?Redirected=true  
End Sub

'***************************************  
' Funktion   
'    fügt ein : in die Zeit ein  
'***************************************	  
Function GetTime(dZeit) ' prüfen ob : mit angegeben wurde  
	If InStr(dZeit, ":") = 0 Then dZeit = Left(dZeit, Len(dZeit) - 2) & ":" & Right(dZeit, 2)  
	GetTime = TimeValue(dZeit)
End Function