Macro Outlook met bijlage

Status
Niet open voor verdere reacties.

CB01

Senior Member, Betaalde handtekening
Lid geworden
5 nov 2009
Berichten
185
Dag allemaal,

Ik heb zelf heel veel kennis van het maken van Macro's in Excel maar Macro's in Outlook is iets nieuws voor mij.

Graag zou ik willen weten hoe ik een Macro in Outlook kan maken zodat deze auromatisch na dat ik de Macro start naar een bepaalde schijf toegaat bv C:\ en hiervandaan vanuit een vaste locatie een bijlage aan de mail toevoegd en deze vervolgens uit stuurt naar een vast aantal caotantpersonen/ email adressen.

ik hoop dat iemand mij hiermee kan helpen.
 
Het bestand "E:\nieuwsbrief.doc" wordt als bijlage verzonden naar alle leden van de distributielijst (onder kontaktpersonen) met de naam 'ledenlijst'.
Deze mcro in de module ThisOutlooksession zetten of in een aparte macromodule.

Code:
Sub nieuwsbrief()
  With CreateItem(0)
    .Subject = "nieuwsbrief"
    .Recipients.Add "ledenlijst"
    .Attachments.Add "E:\nieuwsbrief.doc"
    .Send
  End With
End Sub
 
Oh snb, geweldig zeg. Ik zal deze gaan aanpassen en uitproberen.
Ik moet waarschijnlijk dan een aparte verzendlijst maken en een naam geven en de naam van de nieuwe lijst in de macro bewerken?

Nogmaals bedankt.
 
Je hebt het helemaal begrepen.
 
Ik heb het vandaag kunnen testen maar ik krijg steeds een fout melding en als klik op "Foutmelding opsporen" dan zie ik dat ie bij de regel ".Send" vastloopt. Deze regel is dan geel gemaakt.

Weet iemand de reden hiervan.

dit is wat ik ervan heb gemaakt:

Code:
Sub Test() 
  With CreateItem(0) 
    .Subject = "Test Titel" 
    .Recipients.Add "Test" 
    .Attachments.Add "C:\mailing\test.zip" 
    .Send 
  End With 
End Sub
 
Dan staan er fouten in je verzendlijst.(ongeldige adressen bijv. of er is geen verzendlijst met de titel "Test".)
 
Ik heb deze gemaakt door het maken van een nieuwe "distributielijst" en opgeslagen in Outlook. Als ik deze lijst opvraag dan staat deze ook gewoon in Outlook met de juiste naam en de toegevoegde email adressen.
 
en als je die distributielijst gebruikt voor een testverzending ?
 
Heb de beveiliging voor de Macros omlaag gezet in Outlook omdat deze nog op "Hoog" stond maar hier lag het niet aan.
Hij bleef maar aangeven dat de regel ".Send" niet goed is. Ik dacht dat het wel eens aan de taal kan liggen dus heb ".Send" gewijzigd in ".Sent".

Als ik de Macro nu Run dan krijg ik geen foutmelding maar ontvang ook geen mailtje. Heb mijn eigen emailadres namelijk in de distributielijst staan.

Waar zou het dan aan kunnen liggen en is het wel correct dat ik ".Sent" er nu in heb staan?

PS. heb ook ".ItemSend" geprobeerd maar dat hielp ook niet.
 
Laatst bewerkt:
Heeft iemand nog enig idee waarom dit zo is.
 
Het kan zijn dat je de evaluatiemethode (om te beoordelen of een 'naam' overeenkomt met een emaildres of distributielijst) uit staat.

Ik kan van hieruit niet beoordelen waar je deze macro hebt staan (in thisoutlooksession, een aparte macromodule of elders.

Van simpel naar complex:

begin met
Code:
Sub Test() 
  With CreateItem(0) 
    .Subject = "Test" 
    .Recipients.Add "Test@test.nl"   zet hier een geldig email adres
    .Send 
  End With 
End Sub
vervolgens
Code:
Sub Test() 
  With CreateItem(0) 
    .Subject = "Test" 
    .Recipients.Add "Testje"   zet hier een geldige 'alias' voor een email adres
    .Send 
  End With 
End Sub
 
Ahhhhh geweldig!!
Het is gelukt :D:D:D:D

Als meerdere personen tegelijk wil mailen en ook een tekst wil toevoegen zoals bv. Geachte heer, mevrouw.......
Watvoor VBA regels dien ik toe te voegen?
 
Laatst bewerkt:
.Body = replace("Geachte heer / mevrouw|hierbij de nieuwsbrief van november2009|Veel plezier ermee||hartelijke groeten","|",vbcr)
 
Bedankt dat je mij probeert te helpen maar het werkt niet. Ik weet niet wat er niet goed gaat. Ik heb verschillende manieren getest en heb ook jou voorbeeld letterlijk gekopieerd van hier en toegevoegd maar dan geeft hij aan dat er een fout in zit.

Het enige wat mij hierin opvalt is dat hij zutomatisch een spatie plaatst na de koma maar dat zorgt er niet voor dat hij werkt.

Dit is wat ik nu krijg, zie bijlage.
Code:
Sub Test()
  With CreateItem(0)
    .Subject = "Test"
    .Recipients.Add "Mijnemail@hotmail.com"
    .Attachments.Add "C:\test.zip"
    .Send
    .Body = Replace("Geachte heer / mevrouw|hierbij de nieuwsbrief van november2009|Veel plezier ermee||hartelijke groeten", "|", vbCr)
  End With
End Sub
 

Bijlagen

  • 1.zip
    9,5 KB · Weergaven: 70
Laatst bewerkt:
Het heeft weinig zin tekst in een mail te zetten die al verzonden is. Kijk eens naar de volgorde van de code-regels.
Ik begin wat aan tekst in je eerste bijdrage te twijfelen.
 
Sorry, dat is wel dom van mij.

Maar wat ik ook daarna probeerde.... hij bleef alsnog een foutmelding geven. Ook al had ik alles goed staan.

Ben er nu achtergekomen dat na de goeie regels erin te hebben gezet. Dat ik hem alleen werken kan krijgen als ik VBA en outlook sluit en op de vraag of ik het nieuwe project wil opslaan "Ja" dien te kiezen.
Als ik daarna Outlook opnieuw open en hem test dan doet hij dit wel incl. bijlage en tekst.

SNB nogmaals ontzettend bedankt voor je inspanning en geduld. :thumb:
 
Ik heb nu al een aantal keer hiermee gewerkt. Alles werkt prima.

Heb nog een vraag om dit voor mij te kunnen verbeteren.
Op dit moment plaats ik de volgende code om een de email adressen van de ontvangers toe te voegen
Code:
.Recipients.Add "Mijnemail@hotmail.com"

Maar is er ook een manier om een email adres in de CC of in de BCC te plaatsen?
 
.cc="jouwemail@test.nl
.BCC="zijnadres@test.nl

PS. Ook jouw VBEditor in Outlook heeft een Hulpfunktie (F1)
 
Dank je wel SNB. Ik ben nog nieuw in VBA van outlook en zal vanaf nu zeker de hulp functie hiervan gebruiken.
 
Sorry jongens maar ik heb nog 1 ding waar ik niet uitkom.

Ik kan meerderen personen in het gedeelte ".Recipients.Add" plaatsen en deze ontvangen mijn bericht ook zonder enkele probleem maar als ik meerdere personen in de CC wil plaatsen bv. .dan ontvangt alleen de eeste persoon in de CC mijn bericht en de rest niet.

Weet iemand hier een oplossing voor. Ik heb dit helaas niet in de VBEditor kunnen vinden.

Alvast bedankt
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan