olAppointmentItem Start -Outlook - per Vbscript

 

in folgendem Artikel wird beschrieben, wie per vbscript ein Kalendereintrag in Outlook geschrieben werden kann: http://technet.microsoft.com/en-us/library/ee692864.aspx. Das Verwenden einer Variable für den Startzeitpunkt funktioniert, abhängig von den Ländereinstellungen des Computers, nicht immer.

Da das Datum ja nicht immer gleich ist, wollte ich eine Variable verwenden, was bei einem bestimmten Datum nicht funktioniert hat. Offensichtlich wurde die Variable nicht als Datum erkannt (Outlook 2010) und somit nicht eingetragen: seltsamerweise aber nicht bei allen Einträgen: der Großteil funktioniert.

 

Im Netz hab ich nur Beispiele gefunden, die einen direkten Datumswert, also ohne Variable verwenden:

 

objAppointment.Start = #4/11/2005 11:00 AM#

 

das Datum muss dabei im US Format geschrieben und mit einem Hash-Tag versehen werden um als Datum erkannt zu werden. Diese Variante hat bei mir immer funktioniert.

Wenn ich eine Variable verwende funktioniert diese mit einem Hashtag nicht. Ohne Hashtag funktionieren aber nicht alle Einträge.

  SetLocale en-us

Gelöst habe ich es schlussendlich in dem ich ein englisches Datumsformat verwendet und per vbscript in den jeweiligen Zeilen die Ländereinstellungen manipuliert habe, mittels cdate ändere ich den Variablentyp auf "Datum", currentLocale merkt sich die jetzigen Ländereinstellungen und ändert diese wieder zurück.

 

	Const olAppointmentItem = 1

	Set objOutlook = CreateObject("Outlook.Application")
	Set objAppointment = objOutlook.CreateItem(olAppointmentItem)
	dim currentLocale
	currentLocale = GetLocale()
	SetLocale "en-us"
	datum=mid(file,4,2) + "/" +left(file,2) +"/" +mid(file,7,4)
	objAppointment.Start = cdate(datum)
	SetLocale currentLocale
	objAppointment.AllDayEvent = True 
	objAppointment.Subject = "TextSub"
	objAppointment.Body = "Textbody"
	objAppointment.Location = "perSkript"
	objAppointment.ReminderSet = False
	objAppointment.Sensitivity = 2 'privat
	objAppointment.Save
positive Bewertung({{pro_count}})
Beitrag bewerten:
{{percentage}} % positiv
negative Bewertung({{con_count}})

DANKE für deine Bewertung!

Fragen / Kommentare