Jak odeslat / poslat e-mailem rozsah buněk pomocí aplikace Outlook z aplikace Excel?
Už jste někdy trpěli problémem, že po dokončení sestavy v listu, a musíte poslat do řady buněk v tomto listu, které obsahují některá důležitá data vašemu konkrétnímu příjemci. Existují nějaké rychlé způsoby, jak tento rozsah odeslat e-mailem z aplikace Excel, aniž byste museli otevírat Outlook?
Odešlete řadu buněk jako přílohu z aplikace Excel s kódem VBA
Odešlete řadu buněk jako tělo z aplikace Excel s kódem VBA
Odešlete řadu buněk jako přílohu z aplikace Excel s kódem VBA
Následující kód VBA vám pomůže odeslat vybraný rozsah jako přílohu v aplikaci Excel. Udělejte prosím toto:
1. Otevřete sešit a podržte ALT + F11 klávesy pro otevření Okno Microsoft Visual Basic pro aplikace.
2, klikněte Vložit > Modula vložte následující kód do Okno modulu.
Kód VBA: odešlete rozsah buněk jako přílohu z aplikace Excel
Sub SendRange()
'Update 20131209
Dim xFile As String
Dim xFormat As Long
Dim Wb As Workbook
Dim Wb2 As Workbook
Dim Ws As Worksheet
Dim FilePath As String
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
Dim WorkRng As Range
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set Wb = Application.ActiveWorkbook
Wb.Worksheets.Add
Set Ws = Application.ActiveSheet
WorkRng.Copy Ws.Cells(1, 1)
Ws.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 = ""
.CC = ""
.BCC = ""
.Subject = "information of kte"
.Body = "hello, 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
Ws.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
Poznámka: Ve výše uvedeném kódu můžete podle svých potřeb změnit následující informace.
- .To = ""
- .CC = ""
- .BCC = ""
- .Subject = "informace o kte"
- .Body = "ahoj, prosím zkontrolujte a přečtěte si tento dokument."
3. Pak klikněte na tlačítko F5 Chcete-li spustit tento kód, zobrazí se okno s výzvou, které vám připomene výběr rozsahu, který chcete odeslat. Viz screenshot:
4. Pak klikněte na tlačítko OKa po dokončení indikátoru průběhu se zobrazí výzva a klepněte na povolita poté byl konkrétní rozsah buněk odeslán příjemci jako příloha.
Odešlete řadu buněk jako tělo z aplikace Excel s kódem VBA
Pokud chcete odeslat konkrétní rozsah jako součást těla zprávy z aplikace Excel, můžete k jeho vyřešení použít také následující kód VBA.
Kutools for Excel, s více než 120 užitečné funkce, které vám usnadní práci. | ||
1. Aktivujte svůj list a podržte ALT + F11 klávesy pro otevření Okno Microsoft Visual Basic pro aplikace.
2, klikněte Vložit > Modula vložte následující kód do Okno modulu.
Kód VBA: odešlete rozsah buněk jako tělo z aplikace Excel
Sub EmailRange()
'Update 20131209
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
WorkRng.Select
ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope
.Introduction = "Please read this email."
.Item.To = ""
.Item.Subject = "information of kte"
.Item.Send
End With
Application.ScreenUpdating = True
End Sub
Poznámka: Ve výše uvedeném kódu můžete podle potřeby změnit následující informace.
- .Introduction = "Přečtěte si prosím tento e-mail."
- .Item.To = ""
- .Item.Subject = "informace o kte"
3. Pak klikněte na tlačítko F5 Chcete-li spustit tento kód, zobrazí se výzva k připomenutí výběru rozsahu, který chcete odeslat.
4. Pak klikněte na tlačítko OKa po dokončení indikátoru průběhu se zobrazí výzva a klepněte na povolita poté byla konkrétní část buněk odeslána příjemci jako tělo zprávy.
Poznámky:
1. Tyto kódy jsou k dispozici pouze v případě, že je aplikace Outlook jako váš poštovní program.
2. Po odeslání aktuálního listu můžete přejít do aplikace Outlook a ověřit, zda byl e-mail úspěšně odeslán.
Související články:
Jak odeslat list pouze prostřednictvím aplikace Outlook z aplikace Excel?
Jak odeslat aktuální sešit prostřednictvím aplikace Outlook z aplikace Excel?
Nejlepší nástroje pro produktivitu v kanceláři
Rozšiřte své excelentní dovednosti pomocí Kutools for Excela zažijte efektivitu jako nikdy předtím. Kutools for Excel Nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času. Kliknutím sem získáte funkci, kterou nejvíce potřebujete...
Office Tab Přináší rozhraní s kartami do Office a usnadňuje vám práci
- Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
- Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
- Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!

















