• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

email vanuit excel

Status
Niet open voor verdere reacties.

RB_online

Gebruiker
Lid geworden
10 mrt 2005
Berichten
205
Goedenmiddag

Ik heb een probleem. Ik wil vanuit excel een mail versturen zonder de geopende werkmap mee te sturen.
Is dit mogelijk?

Ik heb al verschillende macro's op dit forum gevonden maar elke keer werd de werkmap als attachment meegestuurd.

het bestand staat op een netwerk en er zijn meerdere gebruikers die allemaal hetzelfde bestand gebruiken. Ook degene die uiteindelijk deze gegevens verwerkt haalt het van deze locatie.
Iedereen moet hetzelfde bestand gebruiken om verlies van relevante gegevens te voorkomen.
Daarom wilde ik na verwerking automatisch een mail genereren zonder attachment met een standaard bericht.

Ik hoop dat iemand mij verder kan helpen

rené
 
Een mogelijkheid is:
Code:
Public Sub SendCustomMail()
    Dim sURLto As String
    
    Dim sAddress As String
    Dim sSubject As String
    Dim sBody As String
    
    sAddress = "appie.hein@ah.nl"
    sSubject = "Boodschappen"
    sBody = "Zeg ap, doe jij de boodschappen vandaag?"
    
    sURLto = "mailto:" & sAddress & "?subject=" & sSubject & "&body=" & sBody
    ActiveWorkbook.FollowHyperlink Address:=sURLto
End Sub

Moet de gebruiker nog wel even op "Send" klikken...
 
:thumb: Bedankt dit werkt goed
We zijn er bijna. Ik zou echter graag willen dat ze ook niet meer op send hoeven te drukken.
Het moet eigenlijk volledig automatisch gaan.
Misschien dat iemand nog suggesties heeft?
 
Een andere optie (wel wat ingewikkelder!) is de volgende. Outlook wordt niet gebruikt, dus je ziet niets terug in de Sent items!

Code:
Public Sub SendCustomMail()
    Dim imsg
    Dim iConf
    Dim Flds
    
    Set imsg = CreateObject("CDO.Message")
    Set iConf = CreateObject("CDO.Configuration")
    Set Flds = iConf.Fields
    
    Const cdoSendUsingMethod = "http://schemas.microsoft.com/cdo/configuration/sendusing"
    Const cdoSMTPServer = "http://schemas.microsoft.com/cdo/configuration/smtpserver"
    Const cdoSMTPConnectionTimeout = "http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout"
    Const cdoSMTPAuthenticate = "http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"
    Const cdoSendUserName = "http://schemas.microsoft.com/cdo/configuration/sendusername"
    Const cdoSendPassword = "http://schemas.microsoft.com/cdo/configuration/sendpassword"
    Const cdoURLProxyServer = "http://schemas.microsoft.com/cdo/configuration/proxyserver"
    Const cdoURLProxyBypass = "http://schemas.microsoft.com/cdo/configuration/urlproxybypass"
    Const cdoURLGetLatestVersion = "http://schemas.microsoft.com/cdo/configuration/urlgetlatestversion"
    Const cdoBasic = 1 'basic (clear-text) authentication
    
    With Flds
      ' Assume constants are defined within script file
      .Item(cdoSendUsingMethod) = 2       ' cdoSendUsingPort
      .Item(cdoSMTPConnectionTimeout) = 10 ' quick timeout
      .Item(cdoSMTPAuthenticate) = cdoBasic
      
      ' Meestal moet je dit invullen om geen 'Authentication error' te krijgen!
      .Item(cdoSMTPServer) = "smtp.helpmij.nl" 'vul hier de smtp servernaam in
      .Item(cdoSendUserName) = "abracadabra" 'vul hier je username in
      .Item(cdoSendPassword) = "mijngeheimewachtwoord" 'vul hier je wachtwoord in
      
      .Item(cdoURLProxyServer) = "server:80"
      .Item(cdoURLProxyBypass) = "<local>"
      .Item(cdoURLGetLatestVersion) = True
      .Update
    End With
    
    With imsg
      Set .Configuration = iConf
          .To = "info@helpmij.nl"
          .From = "info@helpmij.nl"
          .Subject = "Spreadsheet is aangepast!"
          
          'Vul de body met normale/platte tekst
          .textbody = "Let op: spreadsheet 2061207 is aangepast en weer beschikbaar!"

'          'Vul body met een html-pagina:
'          .CreateMHTMLBody "http://www.kiwawaterresearch.nl"
          
'          'Voeg een bijlage toe:
'          .AddAttachment "C:\files\mybook.doc"
          
          'Verstuur het bericht
          .Send
    End With
End Sub

Succes!
 
Hallo RB_online

Als je de eerste code die etri je gestuurd heeft neemt dan moet je nog op send drukken.

Als je nu aan het einde van deze code voor de End Sub de volgende 2 regels toevoegd is het drukken van send volgens mij niet meer nodig.

Application.Wait (Now + TimeValue("0:00:03"))
SendKeys "%{e}"

Succes,

TonRo
 
Hallo kenners

Kan iemand mij toevallig vertellen hoe ik in de bovenste code een CC kan toevoegen.

Met vr. gr.

TonRo
 
Heb je zelf moeite gedaan en geprobeerd?

Het is gewoon

Code:
With imsg
      Set .Configuration = iConf
          .To = "info@helpmij.nl"
          .From = "info@helpmij.nl"
          .Subject = "Spreadsheet is aangepast!"
          
          'Vul de body met normale/platte tekst
          .textbody = "Let op: spreadsheet 2061207 is aangepast en weer beschikbaar!"
          .To = "ron@debruin.nl"
          [B][U].CC = "email@email.nl"[/U][/B]

'          'Vul body met een html-pagina:
'          .CreateMHTMLBody "http://www.kiwawaterresearch.nl"
          
'          'Voeg een bijlage toe:
'          .AddAttachment "C:\files\mybook.doc"
          
          'Verstuur het bericht
          .Send
    End With
 
Haalo Wigi,

Ik bedoelde eigenlijk in de bovenste code die veel korter is, hier krijg ik geen CC bij.

Grtz.

TonRo
 
Hallo Wigi,

Ik bedoelde eigenlijk in de bovenste code die veel korter is, hier krijg ik geen CC bij.

Grtz.

TonRo
 
Code:
Public Sub SendCustomMail()
    Dim sURLto As String
    
    Dim sAddress As String
    Dim sSubject As String
    Dim sBody As String
[B]    Dim sCC As String[/B]
    
    sAddress = "appie.hein@ah.nl"
    sSubject = "Boodschappen"
    sBody = "Zeg ap, doe jij de boodschappen vandaag?"
[B]    sCC = "appie.heinCC@ah.nl"[/B]
    
    sURLto = "mailto:" & sAddress & "?" & [B]& "cc=" & sCC[/B] & "subject=" & sSubject & "&body=" & sBody
    ActiveWorkbook.FollowHyperlink Address:=sURLto
End Sub

ongesteste code

Wigi
 
Goede morgen Wigi,

Ik heb nog enkele dingen aan moeten passen maar uiteindelijk kreeg ik de volgende code:

sURLto = "mailto:" & sAddress & "&cc=" & sCC & "&subject=" & sSubject & "&body=" & sBody

En deze werkt. Bij de code van jou stond de regel nadat ik hem invoegde in het rood en gaf hij een syntax fout.

Toch ontzettend bedankt voor je hulp want ik had al eerder van alles zitten proberen maar kreeg bij CC niets.

Grtz,

TonRo
 
Bij de code van jou stond de regel nadat ik hem invoegde in het rood en gaf hij een syntax fout.

Er staat dan ook ongeteste code in de post ;) dan bestaat de kans dat er nog een foutje in zit.

Graag gedaan.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan