Cum să salvați o foaie de lucru ca fișier PDF și să o trimiteți prin e-mail ca atașament prin Outlook?
În unele cazuri, poate fi necesar să trimiteți o foaie de lucru ca fișier PDF prin Outlook. De obicei, trebuie să salvați manual foaia de lucru ca fișier PDF, apoi să creați un e-mail nou cu acest fișier PDF ca atașament în Outlook și apoi să îl trimiteți. Este nevoie de timp pentru ao realiza manual pas cu pas. În acest articol, vă vom arăta cum să salvați rapid o foaie de lucru ca fișier PDF și să o trimiteți automat ca atașament prin Outlook în Excel.
Salvați o foaie de lucru ca fișier PDF și trimiteți-o prin e-mail ca atașament cu cod VBA
Salvați o foaie de lucru ca fișier PDF și trimiteți-o prin e-mail ca atașament cu cod VBA
Puteți rula codul VBA de mai jos pentru a salva automat foaia de lucru activă ca fișier PDF, apoi să o trimiteți prin e-mail ca atașament prin Outlook. Vă rugăm să faceți următoarele.
1. Deschideți foaia de lucru pe care o veți salva ca PDF și trimiteți-o, apoi apăsați pe Alt + F11 tastele simultan pentru a deschide Microsoft Visual Basic pentru aplicații fereastră.
2. În Microsoft Visual Basic pentru aplicații fereastră, faceți clic pe Insera > Module. Apoi copiați și lipiți codul VBA de mai jos în Cod fereastră. Vedeți captura de ecran:
Cod VBA: Salvați o foaie de lucru ca fișier PDF și trimiteți-o prin e-mail ca atașament
Sub Saveaspdfandsend()
Dim xSht As Worksheet
Dim xFileDlg As FileDialog
Dim xFolder As String
Dim xYesorNo As Integer
Dim xOutlookObj As Object
Dim xEmailObj As Object
Dim xUsedRng As Range
Set xSht = ActiveSheet
Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
If xFileDlg.Show = True Then
xFolder = xFileDlg.SelectedItems(1)
Else
MsgBox "You must specify a folder to save the PDF into." & vbCrLf & vbCrLf & "Press OK to exit this macro.", vbCritical, "Must Specify Destination Folder"
Exit Sub
End If
xFolder = xFolder + "\" + xSht.Name + ".pdf"
'Check if file already exist
If Len(Dir(xFolder)) > 0 Then
xYesorNo = MsgBox(xFolder & " already exists." & vbCrLf & vbCrLf & "Do you want to overwrite it?", _
vbYesNo + vbQuestion, "File Exists")
On Error Resume Next
If xYesorNo = vbYes Then
Kill xFolder
Else
MsgBox "if you don't overwrite the existing PDF, I can't continue." _
& vbCrLf & vbCrLf & "Press OK to exit this macro.", vbCritical, "Exiting Macro"
Exit Sub
End If
If Err.Number <> 0 Then
MsgBox "Unable to delete existing file. Please make sure the file is not open or write protected." _
& vbCrLf & vbCrLf & "Press OK to exit this macro.", vbCritical, "Unable to Delete File"
Exit Sub
End If
End If
Set xUsedRng = xSht.UsedRange
If Application.WorksheetFunction.CountA(xUsedRng.Cells) <> 0 Then
'Save as PDF file
xSht.ExportAsFixedFormat Type:=xlTypePDF, Filename:=xFolder, Quality:=xlQualityStandard
'Create Outlook email
Set xOutlookObj = CreateObject("Outlook.Application")
Set xEmailObj = xOutlookObj.CreateItem(0)
With xEmailObj
.Display
.To = ""
.CC = ""
.Subject = xSht.Name + ".pdf"
.Attachments.Add xFolder
If DisplayEmail = False Then
'.Send
End If
End With
Else
MsgBox "The active worksheet cannot be blank"
Exit Sub
End If
End Sub
3. apasă pe F5 tasta pentru a rula codul. În Naviga caseta de dialog, selectați un folder pentru a salva acest fișier PDF, apoi faceți clic pe OK butonul.
notițe:
Salvați cu ușurință o foaie de lucru sau mai multe foi de lucru ca fișiere PDF separate simultan:
Carnet de lucru divizat utilitatea Kutools pentru Excel vă poate ajuta să salvați cu ușurință o foaie de lucru sau mai multe foi de lucru ca fișiere PDF separate simultan, așa cum se arată în demonstrația de mai jos. Descărcați și încercați acum! (traseu gratuit de 30 de zile)
Articole pe aceeași temă:
- Cum se salvează un nume de fișier Excel cu marcaj de timp?
- Cum se folosește funcția Salvare ca pentru a suprascrie automat fișierul existent în Excel?
- Cum se salvează, se exportă mai multe / toate foile pentru a separa fișiere CSV sau text în Excel?
- Cum se dezactivează sau nu se acceptă opțiunile Salvare și Salvare ca în Excel?
- Cum se dezactivează salvarea registrului de lucru, dar se permite doar salvarea ca în Excel?
Cele mai bune instrumente de productivitate de birou
Îmbunătățiți-vă abilitățile Excel cu Kutools pentru Excel și experimentați eficiența ca niciodată. Kutools pentru Excel oferă peste 300 de funcții avansate pentru a crește productivitatea și a economisi timp. Faceți clic aici pentru a obține funcția de care aveți cea mai mare nevoie...
Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară
- Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
- Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ferestrele noi.
- Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!