none
Macro para Outlook 2007 Win 7 RRS feed

  • Pergunta

  • Estou tentando criar uma macro no outlook para poder enviar um e-mail e deleta-lo para que nao fique em minha caixa de saida.
    Fiz desta forma, porem funciona apenas enquanto o outlook nao é fechado pois reiniciar o mesmo a macro para de funcionar.
    Oque pode causar isso e como arrumar ?

    Sub EnviarDeletar()

    Dim obj As Object

      Dim Mail As Outlook.MailItem

      If MsgBox("Delete email?", vbYesNo Or vbQuestion) = vbNo Then

        Exit Sub

      End If

      Set obj = Application.ActiveInspector.CurrentItem

      If TypeOf obj Is Outlook.MailItem Then

        Set Mail = obj

        Mail.DeleteAfterSubmit = True

        Mail.Send

      End If

    End Sub

    Obrigado

    sexta-feira, 10 de agosto de 2012 12:52

Respostas

Todas as Respostas

  • Prezado(a),
    Estou migrando seu post para o fórum de Office Geral.
    Por favor, das próximas vezes que tiver alguma dúvida relacionada a esse assunto, poste por lá.
    Outra opção seria postar sua questão no Microsoft Answers, categoria Office: http://answers.microsoft.com/pt-br/office
    Obrigado.

    André Alves de Lima
    Microsoft MVP - Client App Dev
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima

    sexta-feira, 10 de agosto de 2012 14:52
  • Olá, boa tarde.

    Vou migrar seu post para o fórum especializado em VBA.


    Hezequias Vasconcelos

    sexta-feira, 10 de agosto de 2012 18:05
    Moderador
  • Cole o código abaixo na classe ThisOutlookSession:

    Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
        Mail.DeleteAfterSubmit = True
    End Sub


    Felipe Costa Gualberto - http://www.ambienteoffice.com.br

    sexta-feira, 10 de agosto de 2012 21:19
    Moderador
  • Show de bola Benzadeus. Porém estou com dúvidas na hora de inserir esse trecho na classe que você indicou.

    Tentei excluir toda a parte,

      If TypeOf obj Is Outlook.MailItem Then

        Set Mail = obj

        Mail.DeleteAfterSubmit = True

        Mail.Send

      End If

    Não funcionou.

    Tentei excluir somente a parte,

    Set Mail = obj

        Mail.DeleteAfterSubmit = True

        Mail.Send

    Também não funcionou.

    Estou no caminho certo ou removi os trechos errados?

    Grato pelo apoio.

    Abs.

    segunda-feira, 13 de agosto de 2012 12:31
  • O código que você deve usar é somente o que expus.


    Felipe Costa Gualberto - http://www.ambienteoffice.com.br

    terça-feira, 14 de agosto de 2012 00:51
    Moderador