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

Lege regels in mail met gebruik van marco

Status
Niet open voor verdere reacties.

Siep26

Gebruiker
Lid geworden
15 sep 2017
Berichten
71
Code:
Sub FactuurVerzenden()
    Dim PDFnaam As String
    Dim OutApp As Object
    Dim OutMail As Object
    
    PDFnaam = ActiveSheet.Range("B32") & _
        "\" & _
        Range("B31") & ".pdf"
    
        Sheets("Factuur").ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=PDFnaam, _
        OpenAfterPublish:=True 'Of False om het document niet te openen
          
    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)

    With OutMail
        .To = Range("B27")
        .CC = Range("B28")
        .BCC = Range("B29")
        .Subject = Range("B34")
        .Body = Join(Application.Transpose(Range("B35:B39" & Cells(Rows.Count, 2).End(xlUp).Row)), vbCrLf)
        .Attachments.Add PDFnaam
        .Display   'Of gebruik .Send
    End With

    Set OutMail = Nothing
    Set OutApp =


Ik gebruik bovenstaande code om een mail te genereren met stukje tekst en een PDF bestand. De tekst voor de mail haal ik uit B35 t/m B39. Ik zou verwachten dat dit 4 regels zijn. Echter in Outlook krijg ik een mail met super veel lege regels. Iemand een idee waar de fout zit in deze macro?
 
Die "B35:B39" & Cells(Rows.Count, 2).End(xlUp).Row kunnen heel veel regels zijn.
Wellicht dat je dit bedoelt:
Code:
Join(Application.Transpose(Range("B35:B39"), vbCrLf)
 
@ edmoor,
Op een haartje na (of beter 'op een haakje na') juist
Code:
Join(Application.Transpose(Range("B35:B39")), vbCrLf)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan