Goedemiddag,
Ik heb een vraag over VBA. Ik probeer om VBA een PDF te laten maken en vervolgens als bijlage toe te voegen in de mail. Het probleem is hiermee dat VBA de spaties in de pdfnaam aanpast naar %20 als het excelbestand is opgeslagen op een onedrive. Is het mogelijk om op een simpele manier ervoor te zorgen dat de %20 worden omgezet naar spaties? Onderstaande code is voor het maken van de email als de pdf al is gemaakt.
Sub Maak_PDF_Mail()
Dim PDFnaam As String
Dim OutApp As Object
Dim OutMail As Object
Dim Medewerker As String
Dim Maand As String
Dim Leidinggevende As String
Dim Mailleidinggevende As String
Dim oOutlook As Object
On Error Resume Next
Set oOutlook = GetObject(, "Outlook.Application")
On Error GoTo 0
If oOutlook Is Nothing Then
MsgBox "Outlook app is niet open, open de applicatie en probeer opnieuw"
Else
Medewerker = Range("E98")
Maand = Range("E99")
Leidinggevende = Range("E101")
Mailleidinggevende = Range("E102")
Pad = ActiveWorkbook.Path + "\"
PDFnaam = Range("M1") & Space(1) & "Urenstaat" & Space(1) & _
Maand & Space(1) & _
Medewerker & Space(1) & ".pdf" 'Maakt de naam van de PDF
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
With OutMail
.To = Mailleidinggevende
.CC = ""
.BCC = ""
.Subject = "Urenstaat" & " " & Maand & " " & Medewerker
.Body = "Beste " & Leidinggevende & "," & vbNewLine & vbNewLine
.Attachments.Add Pad + PDFnaam
.Display
End With
Set OutMail = Nothing
Set OutApp = Nothing
End If
End Sub
Ik heb een vraag over VBA. Ik probeer om VBA een PDF te laten maken en vervolgens als bijlage toe te voegen in de mail. Het probleem is hiermee dat VBA de spaties in de pdfnaam aanpast naar %20 als het excelbestand is opgeslagen op een onedrive. Is het mogelijk om op een simpele manier ervoor te zorgen dat de %20 worden omgezet naar spaties? Onderstaande code is voor het maken van de email als de pdf al is gemaakt.
Sub Maak_PDF_Mail()
Dim PDFnaam As String
Dim OutApp As Object
Dim OutMail As Object
Dim Medewerker As String
Dim Maand As String
Dim Leidinggevende As String
Dim Mailleidinggevende As String
Dim oOutlook As Object
On Error Resume Next
Set oOutlook = GetObject(, "Outlook.Application")
On Error GoTo 0
If oOutlook Is Nothing Then
MsgBox "Outlook app is niet open, open de applicatie en probeer opnieuw"
Else
Medewerker = Range("E98")
Maand = Range("E99")
Leidinggevende = Range("E101")
Mailleidinggevende = Range("E102")
Pad = ActiveWorkbook.Path + "\"
PDFnaam = Range("M1") & Space(1) & "Urenstaat" & Space(1) & _
Maand & Space(1) & _
Medewerker & Space(1) & ".pdf" 'Maakt de naam van de PDF
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
With OutMail
.To = Mailleidinggevende
.CC = ""
.BCC = ""
.Subject = "Urenstaat" & " " & Maand & " " & Medewerker
.Body = "Beste " & Leidinggevende & "," & vbNewLine & vbNewLine
.Attachments.Add Pad + PDFnaam
.Display
End With
Set OutMail = Nothing
Set OutApp = Nothing
End If
End Sub