Home-›Foren-›Outlook-›Outlook VBA-›Per VBA-Script 2 Kalender automatisch öffnen
- Dieses Thema hat 13 Antworten sowie 3 Stimmen und wurde zuletzt vor 17:31 um 27. März 2007 von Unbekannt aktualisiert.
- AutorBeitrag
- 11. Mai 2006 um 16:47 #36105UnbekanntTeilnehmer
Hallo,
ich hab ein Makro für Outlook 2003. Des Ding soll mir neben meinem Hauptkalender gleichzeitig 2 Kalender von Kollegen öffnen, die mir über Exchange freigegeben wurden. Und zwar soll das völlig automatisch beim Anklicken des Kalender-Symbols passieren.
Hier des Makro:
Sub DispCalendars()
Dim myOlApp As Outlook.Application
Dim myNms As Outlook.NameSpace
Dim myFolder As Outlook.MAPIFolder
Dim myRecipient As Outlook.Recipient
Dim myExplorer As Outlook.Explorer
Dim SharedFolder As Outlook.MAPIFolder
Set myOlApp = CreateObject(\”Outlook.Application\”)
Set myNms = myOlApp.GetNamespace(\”MAPI\”)
Set myFolder = myNms.GetDefaultFolder(olFolderCalendar)
Set myExplorer = myOlApp.ActiveExplorer
Set myExplorer.CurrentFolder = myFolder
Set myRecipient = myNms.CreateRecipient(\”e15xx\”)
Set myRecipient = myNms.CreateRecipient(\”e16xx\”)
Set SharedFolder = myNms.GetSharedDefaultFolder(myRecipient, olFolderCalendar)
myExplorer.SelectFolder SharedFolder
End Sub
PROBLEM 1: Wenn ich des Teil im laufenden Outlook-Betrieb ausführe, dann öffnet mir Outlook2003 neben meinem Standard-Kalender nur den Kalender „e16xx“, nicht aber den \”e15xx\” auch noch. Irgendein Fehler in der Programmierung?
PROBLEM 2: Wie kann ich Outlook beibringen, dass er mir bei einem Klick auf das Kalender-Symbol dieses Makro ausführt?
Habt ihr mir einen Ansatz?
Grazie,
Gruß
Tobias
16. Mai 2006 um 13:45 #130443UnbekanntTeilnehmerHallo,
ich suche auch so etwas, wenn ich dein Makro übernehme dann öffnet sich nur der Kalender des Shared Folder aber mein Kalender bleibt nicht aktiv, erst wenn ich das Makro zum zweiten mal starte dann ist auch mein eigener Kalender aktiv. Damit man mehrere Kalender von anderen Benutzern aktivieren kann, muss man bestimmt eine Schleife bauen die das Setting zweimal durchläuft und somit die Variable zweimal aktiviert. (mit den unterschiedlichen Benutzer Namen)16. Mai 2006 um 21:49 #130459UnbekanntTeilnehmerHallo,
bin nicht ganz so fit in Makros, aber:
Du verwendest 2 mal die Variable myRecipent
hintereinander.. Sollte man nicht für jeden
Kalender eine eigene Variable verwenden?
myRecipient1 und myRecipient2 z.B.18. Mai 2006 um 14:40 #130527UnbekanntTeilnehmerich habe jetz eine Variante hinbekommen die mir alle Kalender anzeigt wenn ich mich in der Ansicht der Kalender befinde (STRG+2), Wie kann ich die STRG+2 Tastenkombination in das Makro einbinden damit er erst in diese Ansicht spring ?
Olaf Reis
Dim myOlApp As Outlook.Application
Dim myNms As Outlook.NameSpace
Dim myFolder As Outlook.MAPIFolder
Dim myRecipient1 As Outlook.Recipient
Dim myRecipient2 As Outlook.Recipient
Dim myRecipient3 As Outlook.Recipient
Dim myRecipient4 As Outlook.Recipient
Dim myExplorer As Outlook.Explorer
Dim SharedFolder1 As Outlook.MAPIFolder
Dim SharedFolder2 As Outlook.MAPIFolder
Dim SharedFolder3 As Outlook.MAPIFolderSet myOlApp = CreateObject(\”Outlook.Application\”)
Set myNms = myOlApp.GetNamespace(\”MAPI\”)
Set myFolder = myNms.GetDefaultFolder(olFolderCalendar)
Set myExplorer = myOlApp.ActiveExplorer
Set myExplorer.CurrentFolder = myFolder
Set myRecipient1 = myNms.CreateRecipient(\”Olaf.Reis\”)
Set myRecipient4 = myNms.CreateRecipient(\”Karsten\”)Set sharedFolderCa = Application.GetNamespace(\”MAPI\”).Folders.Item(\”Öffentliche Ordner\”).Folders(\”Alle öffentlichen Ordner\”).Folders(\”cas_data GmbH\”).Folders(\”Kalender\”)
Set SharedFolderCA1 = Application.GetNamespace(\”MAPI\”).Folders.Item(\”Öffentliche Ordner\”).Folders(\”Alle öffentlichen Ordner\”).Folders(\”cas_data GmbH\”).Folders(\”Test1\”)
Set SharedFolderKA = myNms.GetSharedDefaultFolder(myRecipient4, olFolderCalendar)
Set SharedFolderOR = myNms.GetSharedDefaultFolder(myRecipient1, olFolderCalendar)
myExplorer.SelectFolder sharedFolderCa
myExplorer.SelectFolder SharedFolderKA
myExplorer.SelectFolder SharedFolderCA1End Sub
18. Mai 2006 um 14:55 #130528ajoreisTeilnehmerich habe jetz eine Variante hinbekommen die mir alle Kalender anzeigt wenn ich mich in der Ansicht der Kalender befinde (STRG+2), Wie kann ich die STRG+2 Tastenkombination in das Makro einbinden damit er erst in diese Ansicht spring ?
Olaf Reis
Dim myOlApp As Outlook.Application
Dim myNms As Outlook.NameSpace
Dim myFolder As Outlook.MAPIFolder
Dim myRecipient1 As Outlook.Recipient
Dim myRecipient2 As Outlook.Recipient
Dim myRecipient3 As Outlook.Recipient
Dim myRecipient4 As Outlook.Recipient
Dim myExplorer As Outlook.Explorer
Dim SharedFolder1 As Outlook.MAPIFolder
Dim SharedFolder2 As Outlook.MAPIFolder
Dim SharedFolder3 As Outlook.MAPIFolderSet myOlApp = CreateObject(\”Outlook.Application\”)
Set myNms = myOlApp.GetNamespace(\”MAPI\”)
Set myFolder = myNms.GetDefaultFolder(olFolderCalendar)
Set myExplorer = myOlApp.ActiveExplorer
Set myExplorer.CurrentFolder = myFolder
Set myRecipient1 = myNms.CreateRecipient(\”Olaf.Reis\”)
Set myRecipient4 = myNms.CreateRecipient(\”Karsten\”)Set sharedFolderCa = Application.GetNamespace(\”MAPI\”).Folders.Item(\”Öffentliche Ordner\”).Folders(\”Alle öffentlichen Ordner\”).Folders(\”cas_data GmbH\”).Folders(\”Kalender\”)
Set SharedFolderCA1 = Application.GetNamespace(\”MAPI\”).Folders.Item(\”Öffentliche Ordner\”).Folders(\”Alle öffentlichen Ordner\”).Folders(\”cas_data GmbH\”).Folders(\”Test1\”)
Set SharedFolderKA = myNms.GetSharedDefaultFolder(myRecipient4, olFolderCalendar)
Set SharedFolderOR = myNms.GetSharedDefaultFolder(myRecipient1, olFolderCalendar)
myExplorer.SelectFolder sharedFolderCa
myExplorer.SelectFolder SharedFolderKA
myExplorer.SelectFolder SharedFolderCA1End Sub
Ich bin jetzt angemeldet ajoreis (Olaf Reis)
19. Mai 2006 um 16:53 #130571ajoreisTeilnehmerDie Lösung sieht so aus:
Sub Kalender2()
Dim myOlApp As Outlook.Application
Dim myNms As Outlook.NameSpace
Dim myFolder As Outlook.MAPIFolder
Dim myRecipient1 As Outlook.Recipient
Dim myRecipient2 As Outlook.Recipient
Dim myRecipient3 As Outlook.Recipient
Dim myRecipient4 As Outlook.Recipient
Dim myExplorer As Outlook.Explorer
Dim SharedFolder1 As Outlook.MAPIFolder
Dim SharedFolder2 As Outlook.MAPIFolder
Dim SharedFolder3 As Outlook.MAPIFolder\’ Menue und Explorer Kalender Öffnen
SendKeys \”^2\”, True\’ Variable für die Kalender im den Öffentlichen Ordnern
KA1 = \”Kalender cas_data GmbH\”
KA2 = \”Test1\”Set myOlApp = CreateObject(\”Outlook.Application\”)
Set myNms = myOlApp.GetNamespace(\”MAPI\”)
Set myFolder = myNms.GetDefaultFolder(olFolderCalendar)
Set myExplorer = myOlApp.ActiveExplorer
Set myExplorer.CurrentFolder = myFolderSet myRecipient1 = myNms.CreateRecipient(\”Olaf\”)
Set myRecipient2 = myNms.CreateRecipient(\”Karsten\”)Set sharedFolderOR = myNms.GetSharedDefaultFolder(myRecipient1, olFolderCalendar)
Set sharedFolderKAR = myNms.GetSharedDefaultFolder(myRecipient2, olFolderCalendar)Set sharedFolderKA1 = Application.GetNamespace(\”MAPI\”).Folders.Item(\”Öffentliche Ordner\”).Folders(\”Alle öffentlichen Ordner\”).Folders(\”cas_data GmbH\”).Folders(KA1)
Set sharedFolderKA2 = Application.GetNamespace(\”MAPI\”).Folders.Item(\”Öffentliche Ordner\”).Folders(\”Alle öffentlichen Ordner\”).Folders(\”cas_data GmbH\”).Folders(KA2)myExplorer.SelectFolder sharedFolderOR
myExplorer.SelectFolder sharedFolderKARmyExplorer.SelectFolder sharedFolderKA1
myExplorer.SelectFolder sharedFolderKA2End Sub
😉23. Mai 2006 um 22:19 #130780man10toTeilnehmerHallo,
bin neu hier und hab das Makro ja schon mal zum laufen gebracht,
aber nur in dem ich die zeilen wie folgt auskommentiert habewas muss ich den in den nächsten beiden zeilen eingeben bzw. wo bekomm ich das raus?
danke
egbertSet myRecipient1 = myNms.CreateRecipient(\”egbert\”)
Set myRecipient2 = myNms.CreateRecipient(\”homeister\”)\’Set sharedFolderOR = myNms.GetSharedDefaultFolder(myRecipient1, olFolderCalendar)
\’Set sharedFolderKAR = myNms.GetSharedDefaultFolder(myRecipient2, olFolderCalendar)Set sharedFolderKA1 = Application.GetNamespace(\”MAPI\”).Folders.Item(\”KEN! Organizer\”).Folders(\”Allgemein\”).Folders(KA1)
Set sharedFolderKA2 = Application.GetNamespace(\”MAPI\”).Folders.Item(\”KEN! Organizer\”).Folders(\”Allgemein\”).Folders(KA2)\’myExplorer.SelectFolder sharedFolderOR
\’myExplorer.SelectFolder sharedFolderKAR24. Mai 2006 um 14:11 #130798ajoreisTeilnehmerHallo,
Das sind die Benutzer im ADSet myRecipient1 = myNms.CreateRecipient(\”egbert\”)
Set myRecipient2 = myNms.CreateRecipient(\”homeister\”)\’Set sharedFolderOR = myNms.GetSharedDefaultFolder(myRecipient1, olFolderCalendar)
\’Set sharedFolderKAR = myNms.GetSharedDefaultFolder(myRecipient2, olFolderCalendar)für die Benutzer braucht man keinen Öffentlichen Ordner angeben die werden mit
dem Befehl:myExplorer.SelectFolder sharedFolderOR
myExplorer.SelectFolder sharedFolderKARsichbar gemacht.
Das sind Öffentliche Ordner im Exchange die unterschiedlich sein können,
Set sharedFolderKA1 = Application.GetNamespace(\”MAPI\”).Folders.Item(\”Öffentliche Ordner\”).Folders(\”Alle öffentlichen Ordner\”).Folders(\”cas_data GmbH\”).Folders(KA1)
cas_data GmbH ist der erste Folder, KA1 ist die Bezeichnung des Kalender und eine Variable
KA1 = \”Kalender cas_data GmbH\”
Der öffentliche Ordner wird hiermit sichtbar gemacht.
myExplorer.SelectFolder sharedFolderKA1
Ich hoffe ich konnte estwas helfen.
Olaf
24. Mai 2006 um 14:16 #130799UnbekanntTeilnehmerHallo Olaf,
leider wird bei mir immer nur ein Kalender angezeigt.
Eigentlich will ich auch nur zwei öffentliche Kalender gleichzeitig sehen (also so als ob ich in der kalender ansicht die beiden kalender anhake)das makro ruft aber immer nur einen kalender auf,
Kalender von den benutzern brauch ich überhaupt nicht.was muss ich dazu tun ?
Kann man in Outlook makros aufzeichnen ???
dan würde ich das anhaken der kalender einfach aufzeichnen
mfg
egbert24. Mai 2006 um 14:51 #130802ajoreisTeilnehmerHallo Egbert,
in Outlook kann man keine Macros aufzeichnen,
damit alle Kalender gleichzeitig dagestellt werden können mußt du
mit SendKeys \”^2\” True (STRG+2 Tastenkombi), die Ansicht im Outlook ändern.Da habe ich mir auch die Zähne ausgebrochen.
Ich habe auch versucht die Haken per Makro zu setzen, keine Mögliglichkeit gefunden.
Hier nochmals ein Beispiel für dich, es werden nur die Öffentliche Ordner und der eigen Kalender geöffnet.
Olaf
Sub Kalender2()
Dim myOlApp As Outlook.Application
Dim myNms As Outlook.NameSpace
Dim myFolder As Outlook.MAPIFolder
Dim myExplorer As Outlook.Explorer
Dim SharedFolder1 As Outlook.MAPIFolder
Dim SharedFolder2 As Outlook.MAPIFolder\’ Menue und Explorer Kalender Öffnen
SendKeys \”^2\”, True\’ Variable für die Kalender im den Öffentlichen Ordnern
KA1 = \”Kalender cas_data GmbH\”
KA2 = \”Test1\”Set myOlApp = CreateObject(\”Outlook.Application\”)
Set myNms = myOlApp.GetNamespace(\”MAPI\”)
Set myFolder = myNms.GetDefaultFolder(olFolderCalendar)
Set myExplorer = myOlApp.ActiveExplorer
Set myExplorer.CurrentFolder = myFolderSet sharedFolderKA1 = Application.GetNamespace(\”MAPI\”).Folders.Item(\”Öffentliche Ordner\”).Folders(\”Alle öffentlichen Ordner\”).Folders(\”cas_data GmbH\”).Folders(KA1)
Set sharedFolderKA2 = Application.GetNamespace(\”MAPI\”).Folders.Item(\”Öffentliche Ordner\”).Folders(\”Alle öffentlichen Ordner\”).Folders(\”cas_data GmbH\”).Folders(KA2)myExplorer.SelectFolder sharedFolderKA1
myExplorer.SelectFolder sharedFolderKA2End Sub
24. Mai 2006 um 15:12 #130803UnbekanntTeilnehmerHallo Olaf,
tatsächlich,
wenn ich das Makro zweimal aufrufe geht es so wie es soll.
drei kalender in der ansicht und KEIN Haken gesetzt !
Microsoft halt, es geht aber nicht so wie man denkt …Kann ich das makro irgendwie automatisch starten ?
oder wenn man auf den kalenderbuttoon klickt ?mfg
Egbert24. Mai 2006 um 15:31 #130806ajoreisTeilnehmerHallo Egbert,
das habe ich auch noch nicht gefunden, man könnte ja den Kalenderbutten austauschen,
(Makro Ersatz). Wenn du zeit hast mach doch mal für die beiden Punkte ein neues Anfrage auf. Ich habe leider keine Zeit. 🙁Wenn du das weiter gekommen bist schicke mir bitte eine Antwort
Besten Dank
Olaf
27. März 2007 um 17:24 #143558UnbekanntTeilnehmerVieeeeelen Dank!
Als absoluter Makro-n00b hab ich genau sowas gesucht.
Hab mir etz so zurechtgebogen, dasses mir als Standard die 3 Kalender meiner Arbeitskollegen anzeigt und die Kontakte meines Chefs. Jetz muss ichs nur noch fürn Kunden umschreiben.
Geiles Ding! 😉
27. März 2007 um 17:31 #143559UnbekanntTeilnehmernochwas @Egbert:
wahrscheinlich eh zu spät, aber vielleicht interessierts auch andere.
um n makro automatisch beim start ausführen zu lassen, bei der startverknüpfung folgenden parameter mit angeben: \”/autorun namedeinesmakros\” natürlich ohne die \”….
mehr parameter gibts hier http://www.administrator.de/Outlook_Befehlszeichen.html
- AutorBeitrag