Opgelost Hoe controleer ik in VBA of "Postvak In" actief is?

  • Onderwerp starter Onderwerp starter keb
  • Startdatum Startdatum
Dit topic is als opgelost gemarkeerd
Status
Niet open voor verdere reacties.

keb

Gebruiker
Lid geworden
20 feb 2011
Berichten
153
Ik heb een macro die in Outlook alleen in postvak in gebruikt mag worden.
MsgBox Application.ActiveExplorer.CurrentFolder leidt tot "Postvak In", maar het antwoord is taalfafhankelijk.

Hoe controleer ik met VBA of de juiste map actief is?
Bijv. if Application.ActiveExplorer.CurrentFolder = ....
 
Zoiets?
Code:
        Set MAPIFolder =  Application.ActiveExplorer.GetDefaultFolder(olFolderInbox)
 
edit: zie n upas dat het in outlook zelf is, dit was voor Excel

Code:
Sub jec()
 With CreateObject("outlook.application")
   If .getnamespace("mapi").getdefaultfolder(6).Name = .activeexplorer Then
 
   Else
 
   End If
 End With
End Sub
 
  • Leuk
Waarderingen: keb
Bedankt Octafish en JEC.
De methode van methode van JEC werkt.
 
Hij maakt zo het object aan maar dat hoeft dus niet omdat je al in outlook zit
 
Voor de mensen die geen flauw benul hebben waar die 6 voor staat in de code van jec: dat ís dus olFolderInbox. Omdat je in Outlook werkt, zie ik niet in waarom je geen gebruik zou maken van IntelliSense, maar met Late Binding oplossingen.
 
Late binding is een goede oplossing voor wanneer men geen Outlook Classic meer heeft (en dat gaat vanaf 1-1-2025 steeds vaker de standaard zijn!), dan krijg je in ieder geval geen rare compileerfouten en kan je middels foutafhandeling een zinnige mededeling aan de gebruiker tonen.
 
Wat is late binding? Daar moet ik me in gaan verdiepen.
 
Prima uitleg :). In essentie zou ik zeggen, komt het hier op neer: ontwikkel je alleen voor jezelf, of voor personen waarvan je 100% zeker weet dat ze altijd met dezelfde versie werken (huisgenoten, familie, collega’s op werk) gebruik dan Early Binding vanwege de aangegeven voordelen (vooral IntelliSense; snelheidsproblemen spelen niet zo’n grote rol meer).
Ontwikkel je voor algemeen gebruiker, en heb je geen invloed op de omgeving waarin gebruikers werken: dan is Late Binding de veiligste optie.
 
  • Leuk
Waarderingen: keb
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan