nube-li
Goto Top

Outlooktermin mit bestimmter Beschriftung auf Privat setzen

Hallo zusammen!

Ich habe mir neulich ein Iphone zugelegt und es Synchronisiert sauber mit Outlook.
Bereits habe ich eingestellt, das Termine die vom Iphone in den Kalender gesynct werden, mit einer Farblichen Beschriftung versehen werden.

Nun würde ich gerne ein Script haben, dass mir die Termine vom Iphone, welche eine bestimmte Beschriftung haben, automatisch auf Privat gesetzt werden.

Ich habe mich nun wirklich lange mit google rumgeschlagen, aber mit den Schlagwörtern: Outlook, Termine, Beschriftung und Privat finde ich nix.

Hoffentlich könnt ihr m ir helfen.

Grüsse
nube

Content-Key: 143777

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

Ausgedruckt am: 28.03.2024 um 21:03 Uhr

Mitglied: Berrnd
Berrnd 28.05.2010 um 20:09:27 Uhr
Goto Top
Hi,

sowas würde ich mit einem kleinen Makro machen, hier mal ein Beispiel:
(Ich geh mal davon aus, dass du mit "farblicher Beschriftung" eine Kategorie meinst?)
Option Explicit

Dim OutlookApp As Outlook.Application
Dim Postfach As Outlook.Namespace
Dim Kalender As Outlook.Folder
Dim Termin As Outlook.AppointmentItem

Set OutlookApp = CreateObject("Outlook.Application")  
Set Postfach = OutlookApp.GetNamespace("MAPI")  
Set Kalender = Postfach.GetDefaultFolder(olFolderCalendar)

For Each Termin In Kalender.Items
	If Not InStr(Termin.Categories, "Deine Kategorie") = 0  
		Termin.Sensitivity = olPrivate
	End If
Next
Gruß
Bernd
Mitglied: nube-li
nube-li 31.05.2010 um 07:47:11 Uhr
Goto Top
Hallo Bernd

Danke für deine Antwort.

Natürlich hast du recht, mit der farblichen Beschriftung meine ich eine Kategorie.

Wenn ich dein Code in ein Macro einfüge, erhalte ich bei der Zeile

If Not InStr(Termin.Categories, "Geburtstag") = 0       

folgende Fehlermeldung:
Fehelr beim Kompilieren:
Erwartet: Then oder GoTo

Kannst du mir weiterhelfen?

Gruss
Mitglied: Berrnd
Berrnd 31.05.2010 um 10:00:55 Uhr
Goto Top
Hi,

oh...da hab ich wohl ein "Then" vergessen ;).
Die Zeile muss dann also lauten:
If Not InStr(Termin.Categories, "Geburtstag") = 0 Then  
Gruß
Bernd
Mitglied: nube-li
nube-li 31.05.2010 um 10:14:57 Uhr
Goto Top
Hallo Bernd

Nochmals danke.. hätte man eigentlich selbst drauf kommen können, jedoch fehlen wir jegliche Grundlagen der Programmierung face-smile

Ich habe das Macro nun im Outlook erstellt und einmal ausgeführt.
Jedoch kommt dann folgende Fehlermeldung: "Fehler beim Kompilieren: Ausserhalb einer Prozedur ungültig"
Der Debugger markiert folgendes Wort/Zeile
Set OutlookApp = CreateObject("Outlook.Application")

hast du irgendeine Vermutug an was das liegen könnte?

Gruss
Mitglied: Berrnd
Berrnd 31.05.2010 um 14:23:38 Uhr
Goto Top
Hi,

ok, du musst das ganze natürlich noch in eine Prozedur packen, das Ganze sieht dann so aus:
Option Explicit

Sub TermineAufPrivatSetzen
   Dim OutlookApp As Outlook.Application
   Dim Postfach As Outlook.Namespace
   Dim Kalender As Outlook.Folder
   Dim Termin As Outlook.AppointmentItem

   Set OutlookApp = CreateObject("Outlook.Application")  
   Set Postfach = OutlookApp.GetNamespace("MAPI")  
   Set Kalender = Postfach.GetDefaultFolder(olFolderCalendar)

   For Each Termin In Kalender.Items
	   If Not InStr(Termin.Categories, "Deine Kategorie") = 0 Then  
		   Termin.Sensitivity = olPrivate
	   End If
   Next
End Sub
Gruß
Bernd
Mitglied: nube-li
nube-li 31.05.2010 um 17:39:17 Uhr
Goto Top
Hallo Bernd

Langsam ist es mir schon peinlich, aber wer dazu lernen will muss fragen.

Wenn ichs so laufen lasse erhalte ich bei der zeile

 Dim Kalender As Outlook.Folder

die Fehlermeldung: Fehler beim Komplieren: Benutzerdefinierter Typ nicht definiert.

Markiert wird eigentlich der teil hier: Kalender As Outlook.Folder

vielleicht hast du ja noch eine Idee. mit google bin ich leider nicht schlauer geworden face-sad

Gruss
Mitglied: Berrnd
Berrnd 31.05.2010 um 19:17:31 Uhr
Goto Top
Hi,

also bei mir Läufts so ohne Probleme durch.
Versuch mal das Outlook wegzulassen als nur "Dim Kalender As Folder"

Am Besten schaust du dir dazu mal die Objektbibliothek an (einfach F2 drücken).

Gruß
Bernd