如何在 Excel 中將單元格區域貼上到郵件正文中作為圖片?


有效的資料通訊至關重要,有時擷取 Excel 工作表的螢幕截圖可以使事情變得更容易。您可以輕鬆地將影像新增到文件或電子郵件中,使其更賞心悅目,並方便使用者使用,方法是在 Excel 中立即將一組單元格轉換為影像。在本課中,我們將引導您完成將單元格集建立為圖片並將其複製到您選擇的郵件正文中的每個步驟。讓我們開始吧,並發現這個有助於提高 Excel 資料共享能力的實用技巧!

將單元格區域貼上到郵件正文中作為圖片

這裡我們將首先建立一個 VBA 模組,然後選擇單元格區域,最後傳送郵件。因此,讓我們看看一個簡單的過程,瞭解如何將單元格區域貼上到郵件正文中作為 Excel 中的圖片。

步驟 1

考慮一個 Excel 表格,其中包含您所需的資料。

首先,右鍵單擊工作表名稱並選擇“檢視程式碼”以開啟 VBA 應用程式。

右鍵點選 > 檢視程式碼。

步驟 2

然後單擊“插入”並選擇“模組”,然後將以下程式碼複製到文字框中。

插入 > 模組 > 複製。

程式碼

Sub sendMail()
   Dim TempFilePath As String
   Dim xOutApp As Object
   Dim xOutMail As Object
   Dim xHTMLBody As String
   Dim xRg As Range
   On Error Resume Next
   Set xRg = Application.InputBox("Please select the data range:", "Paste Range Images", Selection.Address, , , , , 8)
   If xRg Is Nothing Then Exit Sub
   With Application
      .Calculation = xlManual
      .ScreenUpdating = False
      .EnableEvents = False
   End With
   Set xOutApp = CreateObject("outlook.application")
   Set xOutMail = xOutApp.CreateItem(olMailItem)
   Call createJpg(ActiveSheet.Name, xRg.Address, "DashboardFile")
   TempFilePath = Environ$("temp") & ""
   xHTMLBody = "<span LANG=EN>" _
      & "<p class=style2><span LANG=EN><font FACE=Calibri SIZE=3>" _
      & "Hello, this is the data range that you want:<br> " _
      & "<br>" _
      & "<img src='//cdn.extendoffice.com/cid:DashboardFile.jpg'>" _
      & "<br>Best Regards!</font></span>"
   With xOutMail
      .Subject = ""
      .HTMLBody = xHTMLBody
      .Attachments.Add TempFilePath & "DashboardFile.jpg", olByValue
      .To = " "
      .Cc = " "
      .Display
   End With
End Sub
Sub createJpg(SheetName As String, xRgAddrss As String, nameFile As String)
   Dim xRgPic As Range
   Dim xShape As Shape
   ThisWorkbook.Activate
   Worksheets(SheetName).Activate
   Set xRgPic = ThisWorkbook.Worksheets(SheetName).Range(xRgAddrss)
   xRgPic.CopyPicture
   With ThisWorkbook.Worksheets(SheetName).ChartObjects.Add(xRgPic.Left, xRgPic.Top, xRgPic.Width, xRgPic.Height)
      .Activate
      For Each xShape In ActiveSheet.Shapes
         xShape.Line.Visible = msoFalse
      Next
      .Chart.Paste
      .Chart.Export Environ$("temp") & "" & nameFile & ".jpg", "JPG"
   End With
   Worksheets(SheetName).ChartObjects(Worksheets(SheetName).ChartObjects.Count).Delete
Set xRgPic = Nothing
End Sub

步驟 3

然後單擊 F5 執行模組。然後選擇要複製的單元格區域並單擊“確定”。

F5 > 執行 > 選擇單元格 > 確定。

步驟 4

然後在 Outlook 中,單擊“傳送”以完成任務。

結論

在本教程中,我們使用了一個簡單的示例來演示如何將單元格區域貼上到郵件正文中作為 Excel 中的圖片,以突出顯示特定資料集。

更新於: 2023-09-06

93 次瀏覽

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.