Bem vindo ao forum da InfoLayer

Se for a sua primeira visita, não esqueça de conferir nossas REGRAS. Você precisa se registrar para poder postar e baixar anexos. Para começar a ver as mensagens, selecione um dos fóruns abaixo.

ImagemUniversophp.com.br
Hospede seu site a partir de R$4,00 mensais
Confiram


Excel VBA envia e-mail via outlook condicional a data

Mensagempor Dênis » Qua Dez 29, 2010 4:12 pm

Pessoal, Saudações!
Há algum tempo que não postava!

Vamos lá para mais um projetão!
Estou quebrando a cabeça há alguns dias para estabelecer o seguinte programa:

- 3 colunas - Uma com a data, outra com um e-mail e outra com um assunto.

Quando a data for maior ou igual a do sistema, ele automáticamente envia um e-mail para o endereço listado na coluna 2, informando no corpo do e-mail o assunto.

Estou conseguindo até enviar o e-mail porém fica como draft no outlook (ativando a referencia no VBA, estou com a versão 11.0)

Se alguém puder me ajudar agredeço.

Um Abraço - Dênis
Dênis
Registrado
Registrado
 
Mensagens: 2
Data de registro: Qua Dez 29, 2010 2:34 pm

Re: Excel VBA envia e-mail via outlook condicional a data

Mensagempor MARCOSAV » Qua Dez 29, 2010 7:39 pm

Fala Dênis, blz ?!?!

Cara, qual é o código que vc está usando ??
Coloca ele aí prá gente poder ver melhor o que (ou pq) está acontecendo...

Ah, diz também qual a versão do seu Excel ...

Aguardando...
T+
MARCOSAV
Avatar de usuário
Site Admin
Site Admin
 
Mensagens: 110
Images: 5
Data de registro: Sex Set 24, 2010 1:33 pm

Re: Excel VBA envia e-mail via outlook condicional a data

Mensagempor Dênis » Qui Dez 30, 2010 9:12 am

Fala Marcos, tudo blz e você?

o código que estou usando está abaixo.
a versão do Excel é 2007 .

Private Sub Workbook_Open()
Dim DataRef
DataRef = Sheets(1).Cells(1, 1).Value
If DataRef < Date Then
ActiveWorkbook.SendMail _
Recipients:="responsavel@email.com.br", _
Subject:="Arquivo expirado " & ThisWorkbook.Name
End If
End Sub
Dênis
Registrado
Registrado
 
Mensagens: 2
Data de registro: Qua Dez 29, 2010 2:34 pm

Re: Excel VBA envia e-mail via outlook condicional a data

Mensagempor MARCOSAV » Qui Dez 30, 2010 1:52 pm

Dênis, seu código parece estar ok, então antes de fazer alguma alteração nele (já que vc está conseguindo enviar os emails), tente verificar o seguinte:

No Outlook vá para Ferramentas | Opções e clique no botão Opções de E-mail na aba Preferências. O Salvamento automático pode ser desativado aqui, desmarcando a caixa ao lado de "Salvar automaticamente as mensagens não enviadas".

ou

Clique no botão Opções avançadas de correio electronico. A configuração do Autosave está marcada (é padrão) e a frequência definida tbm por padrão é de 3 minutos (vc pode alterar isso... Se é que já não fez !!!).

Também é possível determinar em qual pasta serão armazenadas as mensagens...

Veja como está o seu Outlook e faça, se necessário, essas alterações prá ver se resolve o problema....
Caso não resolva, então troque o código (tente este):

Código: Selecionar tudo
Sub envia_email()
'FUNCIONA DO 97 AO 2010

    Dim wb As Workbook
    Dim I As Long

    Set wb = ActiveWorkbook

    If Val(Application.Version) >= 12 Then
        If wb.FileFormat = 51 And wb.HasVBProject = True Then
            MsgBox "Existe código VBA neste arquivo (XLSX), não" & vbNewLine & _
                   "haverá nenhum código no arquivo que será enviado. Salve o arquivo" & vbNewLine & _
                   "antes do envio como XLSM e teste a macro novamente.", vbInformation
            Exit Sub
        End If
    End If

    On Error Resume Next
    For I = 1 To 3
        wb.SendMail "teste@teste.com.br", _
                    "Assunto aqui..."
        If Err.Number = 0 Then Exit For
    Next I
    On Error GoTo 0
End Sub


Dá uma olhada nisso, tente as duas coisas e retorne o resultado, ok ?!?!

Absssssssss
T+
MARCOSAV
Avatar de usuário
Site Admin
Site Admin
 
Mensagens: 110
Images: 5
Data de registro: Sex Set 24, 2010 1:33 pm

Fórum Estatísticas

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 1 visitante

Opções

Retornar para Dúvidas (VBA)

cron