Fórum Excel Bácico, Avançado e Vba
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Fórum Excel Bácico, Avançado e Vba

Este fórum é destina a usuário de Excel, que queiram compartilhar informações a básicas, avançadas e programação em VBA...
 
InícioInício  Últimas imagensÚltimas imagens  ProcurarProcurar  RegistarRegistar  Entrar  

 

 enviar e-mail no Excel dos itens selecionados

Ir para baixo 
2 participantes
AutorMensagem
Luciano Petrucci




Mensagens : 2
Data de inscrição : 02/10/2015

enviar e-mail no Excel dos itens selecionados Empty
MensagemAssunto: enviar e-mail no Excel dos itens selecionados   enviar e-mail no Excel dos itens selecionados EmptySex Out 02, 2015 5:15 pm

Bom dia a todos,

Estou precisando de uma ajuda e sei que vocês são especialista em excel e vão poder me ajudar. Eu tenho uma planilha de controle de projetos que desenvolvi no excel, esta planilha já existe algumas programações em VBA, como pesquisa, envio de e-mail, cálculos de dias na semana tirando os feriados do ano, entre outras. Porém, estou com um novo desafio em relação a enviar e-mails pelo excel. Hoje está função na minha planilha faz uma busca en toda a planilha identificando alguns campos chaves com um tipo de status (exemplo: Status=Pendente de aprovação), quando a função encontra este status na planilha, me notifica em uma caixa de mensagem (YES/NO) e se eu quiser enviar o e-mail eu clico em SIM e o e-mail é enviado e a função segue executando até achar na planilha outro registro que se encaixe no critério. Então, esse tipo de código funcionou bem até a planilhar ter mais de 600 entradas, então, eu gostaria da ajuda de vocês para tentar melhorar este código, o que eu preciso:

1 - Criar uma consulta(filtro) através de alguns campos da planilha (FEITO)
2 - Nesta consulta realizada, eu gostaria de marcar os itens que quero enviar e-mail
3 - Enviar e-mail apenas dos itens selecionados.

Desde já agradeço a ajuda de vocês.
Ir para o topo Ir para baixo
alexandrevba

alexandrevba


Mensagens : 1820
Data de inscrição : 13/07/2011
Localização : Serra - ES

enviar e-mail no Excel dos itens selecionados Empty
MensagemAssunto: Re: enviar e-mail no Excel dos itens selecionados   enviar e-mail no Excel dos itens selecionados EmptySex Out 02, 2015 5:32 pm

Bom dia!!

Para que alguém possa lhe ajudar, no mínimo, você deveria postar seu arquivo modelo!

Att
Ir para o topo Ir para baixo
Luciano Petrucci




Mensagens : 2
Data de inscrição : 02/10/2015

enviar e-mail no Excel dos itens selecionados Empty
MensagemAssunto: Re: enviar e-mail no Excel dos itens selecionados   enviar e-mail no Excel dos itens selecionados EmptyQui Nov 05, 2015 6:25 pm

Boa tarde!!!

Segue o código de envio de e-mail que tenho hoje. O que eu preciso é que ele me liste os dados da planilha identificado pelos critérios (if...then, do código abaixo) e envie os e-mails apenas para estes itens identificados. Porém, o que acontece é que ele exibe quantos e-mails eu tenho para enviar através do critério (If...Then, indicada no código) , mas quando vai enviar os e-mails, ele não preserva este critério e envia e-mail para todas as linhas da planilha e não apenas para as linhas que foram identificadas pelo critério (If...Then do código).

Código

Sub FUP()
   Dim Maildb As Object
   Dim MailDoc As Object
   Dim Body As Object
   Dim Session As Object
   Dim texto As String
   Dim rcpt As String
   Dim rcptcc As String
   Dim subj As String
   Dim FUPE As Date
   Dim tipo1 As String
   Dim Msg, Style, Title, Help, Ctxt, Response, MyString
 
   Style = vbYesNo + vbCritical + vbDefaultButton2    ' Define buttons.
   Title = "Aviso"    ' Define title.
   Help = "DEMO.HLP"    ' Define Help file.
   Ctxt = 1000    ' Define topic
       

 FUPE = Date
 'linha = ActiveCell.Row - 1
 linha = 8
 Conta1 = 0
 
 Do While Sheets(2).Cells(linha, 1) <> ""
    If Sheets(2).Cells(linha, 5).Value = "Tarea" And Sheets(2).Cells(linha, 14).Value = "Em andamento" Or Sheets(2).Cells(linha, 14).Value = "A iniciar" Then
       If Sheets(2).Cells(linha, 22).Value = FUPE Or Sheets(2).Cells(linha, 23).Value = FUPE Or Sheets(2).Cells(linha, 24).Value = FUPE Then
           texto = "Buenas, " & vbCrLf & vbCrLf & _
             "La tarea descripta abajo está pendiente de termino, " & _
             "por favor, finalizar la tarea antes de la fecha fin designada en SGP y enviar las evidencias para el TM del proyecto." & vbCrLf & vbCrLf & _
             " Informaciones de la tarea:" & vbCrLf & vbCrLf & _
             "    Tarea: " & Sheets(2).Cells(linha, 4) & vbCrLf & _
             "    Descrición: " & Sheets(2).Cells(linha, 7) & vbCrLf & vbCrLf & vbCrLf & _
             "    -------------------------------------------------------" & vbCrLf & _
             "    Ejecutor: " & Sheets(2).Cells(linha, 18) & vbCrLf & _
             "    Fecha inicio: " & Sheets(2).Cells(linha, 11) & vbCrLf & _
             "    Fecha fin: " & Sheets(2).Cells(linha, 12) & vbCrLf & _
             "    Atraso(dia): " & Sheets(2).Cells(linha, 13) & vbCrLf & vbCrLf & vbCrLf & _
             "Muchas gracias" & vbCrLf & _
             "Saludos" & vbCrLf & _
             "-----------------------------------" & vbCrLf & _
             "Luciano Petrucci"
             
 
             Conta1 = Conta1 + 1
     End If
    End If
     linha = linha + 1
     tipo1 = Sheets(2).Cells(linha, 5)
           
     Msg = Date & " :: Você possuí: " & vbCrLf & _
          Conta1 & " alertas de tarefa Em andamento e/ou a iniciar, deseja enviar"
   Loop
   
   
  'Define message.
   Response = MsgBox(Msg, Style, Title, Help, Ctxt)
       
   If Response = vbYes Then
     
      'Conta1 = Conta1 + 1
     'Start a session of Lotus Notes
      Set Session = CreateObject("Lotus.NotesSession")
   
     'This line prompts for password of current ID noted in Notes.INI
     'or use below to provide password of the current ID (to avoid Password prompt)
     'Call Session.Initialize("<password>")
     'Exemplo: Call Session.Initialize("123456")
     Call Session.Initialize("123456")
     
     'Open the Mail Database of your Lotus Notes
     'Exemplo: Set Maildb = Session.GetDatabase("", "C:\Notes\data\Mail7\lucipe.nsf")
       Set Maildb = Session.GetDatabase("", "C:\Notes\data\Mail7\lucipe.nsf")
       If Not Maildb.IsOpen = True Then Call Maildb.Open
   
     'Create the Mail Document
      Set MailDoc = Maildb.CreateDocument
      Call MailDoc.REPLACEITEMVALUE("Form", "Memo")
   
     'Set the Recipient of the mail
      rcpt = Sheets(2).Cells(linha, 19)
      rcptcc = Sheets(2).Cells(linha, 21)
      Call MailDoc.REPLACEITEMVALUE("SendTo", rcpt)
      Call MailDoc.REPLACEITEMVALUE("CopyTo", rcptcc)
     
   
     'Set subject of the mail
      subj = Sheets(2).Cells(linha, 2)
      subj2 = Sheets(2).Cells(linha, 3)
      subj3 = Sheets(2).Cells(linha, 4)
      Call MailDoc.REPLACEITEMVALUE("Subject", "[" & subj & " :: " & subj2 & "] " & subj3 & " - " & "Para su acción :: Tarea pendiente")
   
     'Create and set the Body content of the mail
      Set Body = MailDoc.CreateRichTextItem("Body")
      Call Body.AppendText(texto)
   
      'Example to create an attachment (optional)
      'If Sheets(1).Cells(linha, 14) <> "" And Sheets(1).Cells(linha, 13) <> "" Then
       ' Call Body.AddNewLine(2)
       ' Call Body.EmbedObject(1454, "", Sheets(1).Cells(linha, 14) & Sheets(1).Cells(linha, 13), "Attachment")
      'End If
     
      'If Sheets(1).Cells(linha, 15) <> "" And Sheets(1).Cells(linha, 16) <> "" Then
      '  Call Body.AddNewLine(4)
      '  Call Body.EmbedObject(1454, "", Sheets(1).Cells(linha, 16) & Sheets(1).Cells(linha, 15), "Attachment")
      'End If
      'Example to save the message (optional) in Sent items
       MailDoc.SaveMessageOnSend = True
   
      'Send the document
      'Gets the mail to appear in the Sent items folder
       Call MailDoc.REPLACEITEMVALUE("PostedDate", Now())
       Call MailDoc.Send(False)
      'Clean Up the Object variables - Recover memory
       Set Maildb = Nothing
       Set MailDoc = Nothing
       Set Body = Nothing
       Set Session = Nothing
 
  Else
   
 End If
Ir para o topo Ir para baixo
Conteúdo patrocinado





enviar e-mail no Excel dos itens selecionados Empty
MensagemAssunto: Re: enviar e-mail no Excel dos itens selecionados   enviar e-mail no Excel dos itens selecionados Empty

Ir para o topo Ir para baixo
 
enviar e-mail no Excel dos itens selecionados
Ir para o topo 
Página 1 de 1
 Tópicos semelhantes
-
» Enviar e-mail pelo o Excel quando faltar 30 dias para vencer um contrato.
» Enviar E-mail pelo Excel - Modelo Pronto
» Enviar dados para o e-mail a cada atualização Excel (VBA)
» resolvido macro excel: enviar email + planilha anexa + copiar a célula A1 e colar no assunto e corpo de e-mail, outlook resolvido
» Macro para enviar e-mail

Permissões neste sub-fórumNão podes responder a tópicos
Fórum Excel Bácico, Avançado e Vba :: Avançado/VBA :: Excel Avançado/VBA-
Ir para: