Macro automatisch opstarten in Outlook 2007

Status
Niet open voor verdere reacties.

obionenairobi

Gebruiker
Lid geworden
18 apr 2009
Berichten
15
Ik heb op het internet een erg handige macro gevonden die controleerd of je niet je attachment vergeet. Aangezien ik die gewoonte heb :-) wilde ik deze wel gebruiken

Hierbij de macro:

' File Attachment Reminder Macro
' Functions with Microsoft Outlook 2007
' 2008-09-15
' Modified by Christopher Corbett (talkspam.com) by using:
' Did You Forget Something? by David Horowitz
' http://pubs.logicalexpressions.com/Pub0009/LPMArticle.asp?ID=341 and
' Including code posted by Sue Mosher
' http://www.outlookcode.com/codedetail.aspx?id=34


Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
If Item.Class <> olMail Then Exit Sub
If Item.Attachments.Count > 0 Then Exit Sub ' Check to see if there are file attached and if so, exit.
If Not SearchForAttachWords(Item.Subject & ":" & Item.Body) Then Exit Sub
Select Case UserWantsToAttach
Case vbYes ' Invoke the InsertFile Dialog and Continue Editing.
Dim objInsp
Dim colCB
Dim objCBB
On Error Resume Next
Set objInsp = Item.GetInspector
Set colCB = objInsp.CommandBars
Set objCBB = colCB.FindControl(, 1079)
If Not objCBB Is Nothing Then
objCBB.Execute
End If
Set objCBB = Nothing
Set colCB = Nothing
Set objInsp = Nothing
Cancel = True
Case vbNo ' Just send the email.
Case vbCancel ' Return to editing the email.
Cancel = True
End Select
End Sub


Function SearchForAttachWords(ByVal s As String) As Boolean
Dim v As Variant
For Each v In Array("attached", "attachment", "enclosed", "bijgaand", "anbei") ' Add the attachment words you use.
If InStr(1, s, v, vbTextCompare) <> 0 Then
SearchForAttachWords = True
Exit Function
End If
Next
End Function

Function UserWantsToAttach() As VbMsgBoxResult
UserWantsToAttach = MsgBox("It appears you may have forgotten to specify your attachment(s)." _
& vbCrLf & vbCrLf & _
"Would you like to do this now?", _
vbQuestion + vbYesNoCancel)
End Function


Vraag: hoe installeer ik deze macro zodat deze opstart met mijn Outlook

P.S. weet eigenlijk niets van VB, ben totale newbie
 
Welkom op het forum.

Open Outlook, druk Alt-F11, en plak de code zoals te zijn in bijlage.

Wigi
 

Bijlagen

  • outlooksession.png
    outlooksession.png
    41,2 KB · Weergaven: 89
Bedankt voor je snelle respons :-)

Heb precies gedaan wat je geschreven hebt, en bij het sluiten krijg ik de vraag of ik het project wil opslaan - en hierna ja geklikt

Daarna Outlook weer geopend en een e-mail verstuurd met als onderwerp "Attachment" en in de tekst het woord "Bijlage"

Gek genoeg krijg ik bij het verzenden geen waarschuwing

Heb ik iets verkeerd gedaan of vergeten ?
 
Heb je dit al eens getest?

Code:
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
If Item.Class <> olMail Then Exit Sub
MsgBox "Hello world"
End Sub

Krijg je de message box dan?

Wigi
 
Ik heb de oude code verwijderd en de bovenstaande code in het project geplakt
en bij het versturen van een e-mail krijg ik inderdaad deze tekst

"Hello World"
 
Laatst bewerkt:
Je weet hiermee dan dat het event Application_ItemSend op zich wel werkt.

Het volgende dat jij moet doen, is stap voor stap extra regels code van jou aan mijn code toevoegen om te testen of die werken of niet. Indien niet, verbeteren.

Wigi
 
aha..... ik kom er net achter dat het script alleen maar werkt als ik e-mails verstuur waarvan de opmaak in HTML verstuur.

Is het niet mogelijk het script aan te passen zodat het werkt voor e-mails met HTML opmaak?
 
aha..... ik kom er net achter dat het script alleen maar werkt als ik e-mails verstuur waarvan de opmaak in HTML verstuur.

Is het niet mogelijk het script aan te passen zodat het werkt voor e-mails met HTML opmaak?

Je schrijft tweemaal hetzelfde.
 
sorry, had niet gedronken :-)

Wat ik bedoelde te vragen of het mogelijk is dit script (misschien via een aanpassing) te gebruiken voor e-mails met een HTML opmaak
 
ben ik weer....

Het script werkt helaas niet zoals het hoort

Alleen als ik antwoord op een andere e-mail waar in de body een van de attachment woorden staan krijg ik een melding dat ik een attachment ben vergeten

Iemand een idee waar de fout zit?
 
Een script werkt altijd zoals het hoort (wellicht niet zoals jij bedoelt).
Dit lijkt mij voldoende.

Code:
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
  With item 
    If .Class <> olMail Then Exit Sub
    If .Attachments.Count > 0 Then Exit Sub
      for j=1 to 3
        If instr(lcase(.Subject & .Body),choose(j,"attachment","bijlage","bijgaand"))>0 Then Exit for
      next
    If j<4 then Item.GetInspector.CommandBars.Controls(, 1079).Execute
  End With
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan