- 12 Dez 2019 às 18:55
#51089
Fala galera, boa noite.
Estou aqui novamente sofrendo muito. Um tempo atrás busquei ajuda aqui no fórum e foi o único lugar em que obtive informação, então novamente recorro a vocês.
Preciso fazer a emissão de 3000 cartas para RSVP e enviá-las por e-mail, meu chefe acha "normal" fazer isso manualmente rs (risos muito nervosos), e para melhorar a situação em 1 dia apenas.
Pesquisei em diversos lugares, até cheguei a encontrar partes do código que preciso, mas não consigo fazer com que eles "se conversem".
Estou realmente muito desesperado, pois se até segunda eu não conseguir achar uma forma de fazer isso, terei que fazer manualmente essas 3000 cartas.
Vamos ao que interessa:
O arquivo vai ler diversas informações geradas a partir de procv (até ai, mamão com açucar)
Criei uma macro de SOMAUM no ID, assim a procv vai buscar tudo após clicar no botão somaum.
Agora é que o bicho pega.
Após carregar todos os dados na página, é necessário que:
1. O arquivo seja salvo em PDF
2. O nome do arquivo seja extraído de uma celula.
3. A pasta para salvar o arquivo seja extraído de uma celula.
4. Após salvar o PDF com o nome e local correto, abrir o outlook e anexar o arquivo.
5. Adicionar destinatário, cópia, título, e corpo da mensagem a partir de uma celula.
6. Enviar
7. SOMAUM e repete a operação.
O código que tentei "fazer uma gambiarra" foi...
Só de pensar em criar essas 3 mil cartas a mão eu chego a suar frio aqui.
Abraços,

Estou aqui novamente sofrendo muito. Um tempo atrás busquei ajuda aqui no fórum e foi o único lugar em que obtive informação, então novamente recorro a vocês.
Preciso fazer a emissão de 3000 cartas para RSVP e enviá-las por e-mail, meu chefe acha "normal" fazer isso manualmente rs (risos muito nervosos), e para melhorar a situação em 1 dia apenas.
Pesquisei em diversos lugares, até cheguei a encontrar partes do código que preciso, mas não consigo fazer com que eles "se conversem".
Estou realmente muito desesperado, pois se até segunda eu não conseguir achar uma forma de fazer isso, terei que fazer manualmente essas 3000 cartas.
Vamos ao que interessa:
O arquivo vai ler diversas informações geradas a partir de procv (até ai, mamão com açucar)
Criei uma macro de SOMAUM no ID, assim a procv vai buscar tudo após clicar no botão somaum.
Agora é que o bicho pega.
Após carregar todos os dados na página, é necessário que:
1. O arquivo seja salvo em PDF
2. O nome do arquivo seja extraído de uma celula.
3. A pasta para salvar o arquivo seja extraído de uma celula.
4. Após salvar o PDF com o nome e local correto, abrir o outlook e anexar o arquivo.
5. Adicionar destinatário, cópia, título, e corpo da mensagem a partir de uma celula.
6. Enviar
7. SOMAUM e repete a operação.
O código que tentei "fazer uma gambiarra" foi...
Código: Selecionar todos
Somado ao....
Sub RENATOPDFEMAIL()
'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 = Range("M2").Value & "_" + Range("M3").Value & ".pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Filename
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
With OutlookMail
.To = Range("M5").Value
.CC = Range("M6").Value
.BCC = ""
.Subject = Range("M7").Value
.Body = Range("M8").Value
.Attachments.Add Filename
.Send
End With
Kill Filename
Set OutlookMail = Nothing
Set OutlookApp = Nothing
End Sub
Código: Selecionar todos
As referências para "encontrar" os dados para a engrenagem funcionar são:Sub PDFEmailEnvio()
Dim Filepdf, rNome, ePath, Filename As String
rNome = Range("M1").Value
ePath = Range("M4").Value
Filename = Trim(rNome & ".Pdf")
Filepdf = ePath & Trim("\" & Filename)
Sheets("CARTA").Select
Application.DisplayAlerts = False
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Filepdf, _
Quality:=xlQualityMinimum, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
MsgBox "PDF gerado com sucesso!"
End Sub
- M1 = nome do arquivo PDF
M2 = local para salvar o arquivo
M3 = destino (email)
M4 = copia (email)
M5 = titulo do email
M6 = conteúdo do corpo do e-mail
Só de pensar em criar essas 3 mil cartas a mão eu chego a suar frio aqui.
Abraços,




