Sub SendSelectedCells_AsPDFinOutlookEmail() Dim objSelection As Excel.Range Dim objTempWorkbook As Excel.Workbook Dim objTempWorksheet As Excel.Worksheet Dim objFileSystem As Object Dim strPDFFile As String Dim objOutlookApp As Outlook.Application Dim objNewEmail As Outlook.MailItem 'Copy the selected cells Set objSelection = Selection Selection.Copy 'Paste the copied cells into a temp worksheet Set objTempWorkbook = Excel.Application.Workbooks.Add(1) Set objTempWorksheet = objTempWorkbook.Sheets(1) With objTempWorksheet.Cells(1) .PasteSpecial xlPasteValues .PasteSpecial xlPasteColumnWidths .PasteSpecial xlPasteFormats End With objTempWorksheet.Columns.AutoFit objTempWorksheet.Rows.AutoFit 'Export temp workbook as a pdf file Set objFileSystem = CreateObject("Scripting.FileSystemObject") strPDFFile = Left(ThisWorkbook.Name, (Len(ThisWorkbook.Name) - 5)) & ".pdf" strPDFFile = objFileSystem.GetSpecialFolder(2).Path & "\" & strPDFFile objTempWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strPDFFile, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True 'Create a new email Set objOutlookApp = CreateObject("Outlook.Application") Set objMail = objOutlookApp.CreateItem(olMailItem) 'Attach the PDF file objMail.Attachments.Add strPDFFile objMail.Display 'Delete the temp PDF file objTempWorkbook.Close (False) objFileSystem.DeleteFile (strPDFFile) End Sub