• 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.

Nieuwe regel forceren in de 'body' van een in VB gegenereerde email,,,

Status
Niet open voor verdere reacties.

assessor

Gebruiker
Lid geworden
7 jan 2007
Berichten
184
Met een button in een Excel sheet wil ik een standaard email genereren met drie regels text.
Onderstaande code werkt hiervoor vlekkeloos ware het niet de text in de body van de mail er zo:

Regel 1Regel 2Regel 3


uitziet in plaats van zo:
Regel 1
Regel 2
Regel 3


Code:
Sub Mail()
    Subject = "Title - " & Date
    body = "Regel 1" & vbCrLf & "Regel 2" & vbCrLf & "Regel 3"
    link = "mailto:jan@home.nl; cees@home.nl; piet@werk.com?subject=" & Subject & "&body=" & body
    ActiveWorkbook.FollowHyperlink Address:=link
    On Error GoTo NoMailToday
    Exit Sub
NoMailToday:
    Unload Me
    MsgBox "Unable to open Outlook" & vbCrLf & "Please email manually"
End Sub

Ik heb hier inmiddels vele tieltallen artiekelen over gelezen zowel NL als UK daar er in VB soms vreemde verschillen zitten.

Ik heb alle mogelijke combinaties geprobeerd met Chr(10), Chr(13), n\ #, vbLfCr, vbNewLine, vbCr, vbLf (met en zonder vb)
Als ik bijvoorbeeld Chr (42) gebruik komt er wel netjws een * te staan.

Dit zijn de tools.

—————— OS Info —————————————————————————————
Prep Type : PC-laptop
Prep Date : 9/3/2014 12:11:32 AM
Operating System : Microsoft Windows 7 Professional
Service Pack : 1
Version : 6.1.7601
Build Number : 7601

Microsoft Office Professional Plus 2010 (14.0.4763.1000)
Microsoft Office Excel MUI (English) 2010 (14.0.4763.1000)


Ik weet het niet meer,,, Help!
 
Dat vind ik wel een beetje vreemde manier van mailen. Doe het eens zo:
Code:
Sub Mail()
    Dim OutApp As Object
    Dim OutMail As Object
    Dim Body As String
    
    Body = "Regel 1" & vbCrLf & _
           "Regel 2" & vbCrLf & _
           "Regel 3"
    
    On Local Error GoTo NoMailToday
    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)
    With OutMail
        .to = "jan@home.nl;cees@home.nl;piet@werk.com"
        .CC = ""
        .BCC = ""
        .Subject = "Het onderwerp"
        .Body = Body
        .Send
    End With
    
    On Local Error Goto 0
    Set OutMail = Nothing
    Set OutApp = Nothing
    Exit Sub

NoMailToday:
    Unload Me
    MsgBox "Unable to open Outlook" & vbCrLf & "Please email manually"
End Sub

Om het te testen kan je de .Send even wijzigen in .Display
 
Laatst bewerkt:
Veel dank edmoor,

Werkt perfect en ziet er stukken netter uit dan mijn 'bijeengeraapte' code.
Heb je enig idee waarom noch vbCrLf, noch een van de andere opties niet in mijn versie werken? Dat is immers het enige dat hier niet werkt...

Mocht je hier een snel antwoord op hebben graag, leer ik weer van.

Zal deze draad binnenkort sluiten.
Nogmaals dank.
 
Ik denk dat die worden genegeerd door het Mail gedeelte van de hyperlink processor.
Maar zoals gezegd mail ik nooit op die manier, dus zeker ben ik er niet van.
Je hebt wel alle New Line characters geprobeerd :p

Daarnaast geeft de manier die ik liet zien veel meer vrijheid en mogelijkheden.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan