Ik heb zojuist precies gedaan wat je zei en het gaat bij mij goed. Heb er hieronder even bij iedere slicer een .ClearAllFilters voor gezet. Dat lost het waarschijnlijk op bij jou.
Je gehele code kan zo:
Alleen het pad even aanpassen naar wens
Sub Mail_workbook_Outlook_1()
arr = Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December")
iGisteren = Date - 1
With ActiveWorkbook.SlicerCaches("Slicer_dag")
.ClearAllFilters
For i = 1 To .SlicerItems.Count
.SlicerItems(i).Selected = .SlicerItems(i).Name = Day(iGisteren)
Next i
End With
With ActiveWorkbook.SlicerCaches("Slicer_maand")
.ClearAllFilters
For i = 1 To .SlicerItems.Count
.SlicerItems(i).Selected = .SlicerItems(i).Name = arr((Month(iGisteren) - 1))
Next i
End With
With ActiveWorkbook.SlicerCaches("Slicer_jaar")
.ClearAllFilters
For i = 1 To .SlicerItems.Count
.SlicerItems(i).Selected = .SlicerItems(i).Name = Year(iGisteren)
Next i
End With
saveLocation = ThisWorkbook.Path & "\" & "Dagoverzicht.pdf"
ActiveSheet.ExportAsFixedFormat xlTypePDF, saveLocation
strbody = "Hej," & vbNewLine & vbNewLine & _
"" & vbNewLine & _
"In bijlage kunnen jullie het dagoverzicht terugvinden van de fouten zonder boeking" & vbNewLine & _
"" & vbNewLine & _
"" & vbNewLine & _
"Met vriendelijke groeten," & vbNewLine & _
"With kind regards," & vbNewLine & _
""
With CreateObject("Outlook.Application").CreateItem(0)
.To = "test.test@test.com"
.Subject = "Dagoverzicht van de fouten zonder boeking"
.Body = strbody
.Attachments.Add saveLocation
.Display
End With
End Sub