Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[VBA] ItemSent Event in Outlook

Pagina: 1
Acties:

  • Zak aarde
  • Registratie: Juni 2007
  • Laatst online: 27-03 13:01
Ik (VBA beginner) ben bezig een macro voor Outlook 2010 te schrijven die automatisch emails in het onderwerpveld een markering toekent die bestaat uit een projectnummer en een nummer dat aangeeft hoeveelste email het is binnen dat project. Dus: [projectID - mailNo.] waarbij mailNo doortelt bij elke nieuw verzonden mail.

Indien een gebruiker antwoordt op een mail zonder markering wil ik graag dat de macro dit voorkomt en aanbiedt om markering toe te voegen aan de mail, en dit moet gebeuren zodra de gebruiker op 'Send' gedrukt heeft om de mail te verzenden. Hiervoor bestaat het ItemSend event.

Ik heb nu alleen moeilijkheden met het aan de praat krijgen hiervan, ik krijg niet door hoe ik de voorbeeldcode van deze instructie kan laten werken.

Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Public WithEvents myOlApp As Outlook.Application 
 
 
 
Public Sub Initialize_handler() 
 
 Set myOlApp = Outlook.Application 
 
End Sub 
 
 
 
Private Sub myOlApp_ItemSend(ByVal Item As Object, Cancel As Boolean) 
 
 Dim prompt As String 
 
 prompt = "Are you sure you want to send " & Item.Subject & "?" 
 
 If MsgBox(prompt, vbYesNo + vbQuestion, "Sample") = vbNo Then 
 
 Cancel = True 
 
 End If 
 
End Sub


Ik heb het voorbeeld in een class gezet in mijn project maar ik heb vervolgens geen idee hoe ik code dan kan laten draaien. Als ik een instantie van die class aanroep vanuit mijn hoofd-module en vervolgens een mail verstuur, krijg ik geen pop-up. Hoe zorg ik ervoor dat dit binnen mijn outlook gaat draaien en het event getriggerd wordt?

Google helpt me niet verder, heb nu al teveel tijd erin gestopt met lezen maar niet begrijpen wat ik fout doe. Zoeken op ItemSend op GoT geeft 1 topic wat niet relevant is voor mijn vraag. Qua programmeren ben ik echt een beginner, mijn skills zijn op te sommen in het beheersen in Google en het kopiëren en aanpassen van al werkende code. Mijn begrip is meestal wel redelijk.

Een helpende hand zou ik enorm waarderen.

  • Armageddon_2k
  • Registratie: September 2002
  • Laatst online: 19-11 15:57

Armageddon_2k

Trotse eigenaar: Yamaha R6

Ik ben er nu nog niet helemaal achter of je nu in vb.net een addin aan het maken bent, of in vba macro's werkt. Ik vermoed het laatste.

In het geval van macro's hoe je het hele bovenste deel niet te doen.
Omdat je vanuit Outlook zelf bezig bent hoef je niet je application op te halen als object.

Dit is bij mij voldoende:
Visual Basic:
1
2
3
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    MsgBox "Hoi"
End Sub

  • Zak aarde
  • Registratie: Juni 2007
  • Laatst online: 27-03 13:01
Ik werk met macro's en programmeer gewoon binnen Outlook. Jouw 3 regels moeten dus in een Class of in een Module staan om te werken? Moet je hem vanuit Outlook dan nog aanzetten of draait dat automatisch als je Outlook opent?