Skip to main content

如何僅通過Outlook從Excel發送工作表?

Author: Xiaoyang Last Modified: 2025-08-06

如果你想通過Outlook將Excel工作簿中的單個工作表以電子郵件形式發送,可以將該工作表作為附件、正文內容或PDF文件發送。但有沒有更快的方法來處理這個問題呢?

使用「傳送至郵件收件人」命令從Excel將單個工作表作為正文發送

使用VBA代碼從Excel將單個工作表作為附件發送

使用VBA代碼從Excel將單個工作表作為PDF文件發送


arrow blue right bubble 使用「傳送至郵件收件人」命令從Excel將單個工作表作為正文發送

Excel支持我們使用「傳送至郵件收件人」命令將活動工作表作為正文內容發送。你可以按照以下步驟操作:

如果你使用的是Excel 2007、2010或2013,則需要先將此「傳送至郵件收件人」命令添加到快速訪問工具欄中。

1. 點擊「 自訂快速訪問工具欄」圖標,然後選擇「其他命令」,請參見截圖:

choose More Commands from Customize Quick Access Toolbar

2. 在「Excel選項」對話框中,於「從下列位置選擇命令」下拉列表中選擇「不在功能區中的命令」,然後選擇「傳送至郵件收件人」選項,並點擊「添加>>」按鈕將此命令添加進去,最後點擊「確定」保存設置。請參見截圖:

select the Send to Mail Recipient option from Excel Options dialog box

3.傳送至郵件收件人」命令已插入到快速訪問工具欄中,請參見截圖:

the Send to Mail Recipient command has been inserted into the Quick Access Toolbar

4. 然後點擊這個「傳送至郵件收件人」圖標按鈕,會彈出一個提示框,在電子郵件提示框中勾選「將當前工作表作為消息正文發送」,然後點擊「確定」。請參見截圖:

check Send the current sheet as the message body in the dialog box

5. 接著會在工作表數據上方顯示一個電子郵件編輯框,你可以在相應的文本框中輸入收件人、主題和介紹文字。請參見截圖:

an email edit box is displayed, enter the recipients, subject and introduction

6. 然後點擊「發送此工作表」將活動工作表作為消息正文發送給指定的人。

a screenshot of kutools for excel ai

使用 Kutools AI 解鎖 Excel 的魔法

  • 智能執行:執行單元格操作、分析數據並創建圖表——所有這些都由簡單的指令驅動。
  • 自訂公式:生成量身定制的公式,簡化您的工作流程。
  • VBA 編碼:輕鬆編寫和實現 VBA 代碼。
  • 公式解釋:輕鬆理解複雜的公式。
  • 文本翻譯:打破電子表格中的語言障礙。
通過人工智能工具增強您的 Excel 能力。立即下載,體驗前所未有的效率!

arrow blue right bubble 使用VBA代碼從Excel將單個工作表作為附件發送

如果你想將活動工作表作為附件發送,以下VBA代碼可以幫助你完成。

1. 啟動你想發送的工作表。

2. 按住ALT + F11鍵,打開Microsoft Visual Basic for Applications窗口

3. 點擊「插入」>「 模塊」,並將以下代碼粘貼到模塊窗口中。

VBA代碼:從Excel發送當前工作表作為附件

Sub SendWorkSheet()
'Update 20131209
Dim xFile As String
Dim xFormat As Long
Dim Wb As Workbook
Dim Wb2 As Workbook
Dim FilePath As String
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
On Error Resume Next
Application.ScreenUpdating = False
Set Wb = Application.ActiveWorkbook
ActiveSheet.Copy
Set Wb2 = Application.ActiveWorkbook
Select Case Wb.FileFormat
Case xlOpenXMLWorkbook:
    xFile = ".xlsx"
    xFormat = xlOpenXMLWorkbook
Case xlOpenXMLWorkbookMacroEnabled:
    If Wb2.HasVBProject Then
        xFile = ".xlsm"
        xFormat = xlOpenXMLWorkbookMacroEnabled
    Else
        xFile = ".xlsx"
        xFormat = xlOpenXMLWorkbook
    End If
Case Excel8:
    xFile = ".xls"
    xFormat = Excel8
Case xlExcel12:
    xFile = ".xlsb"
    xFormat = xlExcel12
End Select
FilePath = Environ$("temp") & "\"
FileName = Wb.Name & Format(Now, "dd-mmm-yy h-mm-ss")
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
Wb2.SaveAs FilePath & FileName & xFile, FileFormat:=xFormat
With OutlookMail
    .To = "skyyang@extendoffice.com"
    .CC = ""
    .BCC = ""
    .Subject = "kte features"
    .Body = "Please check and read this document."
    .Attachments.Add Wb2.FullName
    .Send
End With
Wb2.Close
Kill FilePath & FileName & xFile
Set OutlookMail = Nothing
Set OutlookApp = Nothing
Application.ScreenUpdating = True
End Sub

注意:在上述代碼中,你可以根據自己的需求更改以下信息。

  • .To = "skyyang@extendoffice.com"
  • .CC = ""
  • .BCC = ""
  • .Subject = "kte features"
  • .Body = "Please check and read this document."

4. 然後按下F5鍵運行此代碼,會彈出一個提示框,進度條完成後點擊「允許」,然後當前工作表將作為附件發送給你的收件人。

click Allow when the progress bar is finished


arrow blue right bubble 使用VBA代碼從Excel將單個工作表作為PDF文件發送

有時候,你需要將工作表報告發送給他人,但不希望對方修改它。在這種情況下,你可以從Excel將工作表作為PDF文件發送。

1. 啟動你想發送的工作表。

2. 按住ALT + F11鍵,打開Microsoft Visual Basic for Applications窗口

3. 點擊「插入」>「模塊」,並將以下代碼粘貼到模塊窗口中。

VBA代碼:從Excel發送當前工作表作為PDF文件

Sub SendWorkSheetToPDF()
'Update 20131209
Dim Wb As Workbook
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
On Error Resume Next
Set Wb = Application.ActiveWorkbook
FileName = Wb.FullName
xIndex = VBA.InStrRev(FileName, ".")
If xIndex > 1 Then FileName = VBA.Left(FileName, xIndex - 1)
FileName = FileName & "_" + ActiveSheet.Name & ".pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:=FileName
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
With OutlookMail
    .To = "skyyang@extendoffice.com"
    .CC = ""
    .BCC = ""
    .Subject = "kte features"
    .Body = "Please check and read this document."
    .Attachments.Add FileName
    .Send
End With
Kill FileName
Set OutlookMail = Nothing
Set OutlookApp = Nothing
End Sub

注意:在上述代碼中,你可以根據需要更改以下信息。

  • .To = "skyyang@extendoffice.com"
  • .CC = ""
  • .BCC = ""
  • .Subject = "kte features"
  • .Body = "Please check and read this document."

4. 然後按下F5鍵,會彈出一個提示框,進度條完成後點擊「允許」,然後活動工作表將作為PDF文件發送給指定的人。

click Allow after the progress bar finising

注意:

1. 這些方法僅在你使用Outlook作為郵件程序時可用。

2. 發送當前工作表後,你可以進入Outlook確認郵件是否成功發送。


建立郵件清單然後發送電子郵件

Kutools for Excel建立郵件清單發送 電子郵件 工具可以快速在工作表中創建郵件清單,然後將相同的主題、相同內容和相同附件發送給多個電子郵件地址。
 mailing list
arrow down
send multiples emails by kutools

相關文章:

如何通過Outlook從Excel發送當前工作簿?

如何通過Outlook從Excel發送/電子郵件範圍的單元格?

最佳 Office 辦公效率工具

🤖 Kutools AI Aide:徹底革新數據分析,基於智能執行|生成程式碼|創建自訂公式|分析數據並生成圖表|調用 Kutools Functions
熱門功能查找、選取項目的背景色或標記重複值 | 刪除空行 | 合併列或單元格且不丟失資料 | 四捨五入...
高級 LOOKUP多條件查找|多值查找|多表查找|模糊查找...
高級下拉列表快速創建下拉列表 | 關聯下拉列表 | 多選下拉列表 ...
列管理器添加指定數量的列 | 移動列 | 切換隱藏列的可見狀態 | 區域與列比較 ...
精選功能網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿及工作表管理器 | 資源庫 (自動文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按清單發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/傾斜/刪除線 ...)...
前15 大工具集12 款文本工具添加文本刪除特定字符,...)|50+ 種圖表 類型甘特圖,...)|40+ 實用 公式基於生日計算年齡,...)|19 款插入工具插入QR码按路徑插入圖片,...)|12 款轉換工具金額轉大寫匯率轉換,...)|7 款合併和分割工具高級合併行分割儲存格,...)| ...以及更多
使用 Kutools 支援你的語言——支援英語、西班牙語、德語、法語、中文及40 多種語言!

利用 Kutools for Excel 大幅提升你的 Excel 技能,感受前所未有的高效體驗。 Kutools for Excel 提供超過300 項高級功能,助你提升效率並保存時間。 點此查看你最需要的功能...


Office Tab 為 Office 帶來標籤式介面,讓你的工作更加輕鬆

  • 啟用 Word、Excel、PowerPoint 的標籤式編輯和閱讀功能
  • 在同一個視窗的標籤中打開和創建多個文件,而不是在新窗口中分開開啟。
  • 可提升你50% 的工作效率,每天為你大量減少滑鼠點擊次數!