Ola amigao, percebi o seguinte no envio da Tabela.
Eu possuo varias planilhas, e a unica que quero fazer o envio, é justamente a Aba "Modelo Frete Lojista", as demais nao quero que gere PDF e nem faça o envio. entao no codigo abaixo, teria como fazer com que apenas a Aba "Modelo Frete Lojista" seja acionada ?
Outra coisa, quando recebi o Email, o PDF ficou grande demais , teria como colocar no codigo algo para eu ir testando qual tamanho seria melhor ? exemplo, estando eu dentro da Macro, teria la Uma linha de comandoque traria o tamanho do PDF ( quero dizer o Zoom da porcentagem) la eu poderia digitar o zoom mais adequado.
Fiz uma modificacao, excluido a Planilha veja como ficou.
Abaixo seu codigo para se possivel fazer 2 as modificacoes que gostaria de ter.
Option Explicit
Sub Enviar_Email_com_PDF()
'========================================================
'Essa macro requer que sejam acrescentadas as referências
'Microsoft Outlook 12.0 (ou maior) Object Library
'Microsoft Scriping Runtime
'========================================================
Dim OL As Object
Dim EmailItem As Object
Dim Wb As Workbook
Application.ScreenUpdating = False
Set OL = CreateObject("Outlook.Application")
Set EmailItem = OL.CreateItem(olMailItem)
ActiveSheet.UsedRange.Select
ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
ActiveWorkbook.Path & "Temp.pdf", Quality:=xlQualityStandard _
, IncludeDocProperties:=False, IgnorePrintAreas:=False, OpenAfterPublish _
:=False
With EmailItem
.Subject = "Esboço Pedido Gauer do Brasil"
.Body = "Segue anexo seu Pedido para Aprovação." & vbCrLf & _
"" & vbCrLf & _
"Obrigado!"
.To = "atendimento-rj@gauerdobrasil.com.br"
.CC = "contato@fazerbem.com.br.com.br"
.Importance = olImportanceNormal
.Attachments.Add ActiveWorkbook.Path & "Temp.pdf"
.Send
MsgBox "RELATÓRIO ENVIADO COM SUCESSO!", vbInformation, "ENVIADO"
End With
Application.ScreenUpdating = True
Set Wb = Nothing
Set OL = Nothing
Set EmailItem = Nothing
Call ApagarArquivoTemporário(ActiveWorkbook.Path & "")
End Sub
Sub ApagarArquivoTemporário(ByVal Caminho As String)
'Desabilita a atualização automática
Application.EnableEvents = False
'Declaração de variáveis
Dim fso As Scripting.FileSystemObject
Dim fld As Scripting.Folder
Dim fl As Scripting.File
'Aqui é criado o objeto que comunica com as pastas do computador
Set fso = CreateObject("Scripting.FileSystemObject")
'Esse objeto executa um método do FileSystemObject
'para buscar atribuir à variável fld uma pasta
Set fld = fso.GetFolder(Caminho)
'Loop em cada elemento (ou seja, arquivo) do caminho desejado:
For Each fl In fld.Files
'Verifica se é um arquivo com extensão PDF
If Right(fl.Name, 3) = "PDF" Or Right(fl.Name, 3) = "pdf" Then
fl.Delete
End If
Next
'Habilita a atualização automática
Application.EnableEvents = True
End Sub
Postado : 01/12/2015 9:38 am