Olá Alexandre,
Segue o código completo
Sub Enviar_Email(ByRef Form As String)
Dim iMsg As Object
Dim iConf As Object
Dim strbody As String
Dim Destinatarios As String
Dim Copiatarios As String
Dim Flds As Variant
Dim ColDest As Integer
Dim LastDest As Integer
Dim ColCop As Integer
Dim LastCop As Integer
'Identifica se é Ocorrência com Funcionário ou Terceiro para colcoar o texto correto.
If Form = "Funcionário" Then
strbody = "ATENÇÃO" & vbNewLine & vbNewLine & _
"Você está recebendo esta Mensagem porque uma Ocorrência foi cadastrada!!" & vbNewLine & vbNewLine & _
"Ocorrência: " & frmCadastrosocorrencias.cboOcorrencia.Value & vbNewLine & _
"Quanto à Afastamento: " & frmCadastrosocorrencias.cboTipoocorrencia.Value & _
vbNewLine & vbNewLine & _
"Ocorrencia Número " & frmCadastrosocorrencias.cboCodigoacidente.Value & " com o Funcionário " & frmCadastrosocorrencias.txtNome.Value & _
vbNewLine & vbNewLine & _
"Descrição Preliminar: " & frmCadastrosocorrencias.txtDescricao & vbNewLine & vbNewLine & _
"Acesse o Smart Prevent e Verifique!!" & vbNewLine & vbNewLine & _
"Smart Prevent - Prevenir é a Melhor Alternativa"
Else
strbody = "ATENÇÃO" & vbNewLine & vbNewLine & _
"Você está recebendo esta Mesagem porque uma Ocorrência com Terceiros foi cadastrada!!" & vbNewLine & vbNewLine & _
"Ocorrencia Número " & frmCadastrosocorrenciasT.cboCodigoacidente.Value & " com o Terceiro " & frmCadastrosocorrenciasT.txtNome.Value & _
vbNewLine & vbNewLine & _
"Descrição Preliminar: " & frmCadastrosocorrenciasT.txtDescricao & vbNewLine & vbNewLine & _
"Acesse o Smart Prevent e Verifique!!" & vbNewLine & vbNewLine & _
"Smart Prevent - Prevenir é a Melhor Alternativa"
End If
'Identifica número da coluna de Destinatários e Copiatários para o E-mail
Call Identifica_Coluna("Destinatarios", ThisWorkbook.Worksheets("Listas"))
ColDest = ColunaLista
Call Identifica_Coluna("Copiatarios", ThisWorkbook.Worksheets("Listas"))
ColCop = ColunaLista
'Identifica final das listas de destinatários e copiatários
ThisWorkbook.Worksheets("Listas").Activate
LastDest = Application.WorksheetFunction.CountA(Columns(ColDest))
LastCop = Application.WorksheetFunction.CountA(Columns(ColCop))
'Monta Lista de Destinatários
Destinatarios = ""
For iCounter = 2 To LastDest
If Destinatarios = "" Then
Destinatarios = Cells(iCounter, ColDest).Value
Else
Destinatarios = Destinatarios & ";" & Cells(iCounter, ColDest).Value
End If
Next iCounter
'Monta Lista de Copiatários
Copiatarios = ""
For iCounter = 2 To LastCop
If Copiatarios = "" Then
Copiatarios = Cells(iCounter, ColCop).Value
Else
Copiatarios = Copiatarios & ";" & Cells(iCounter, ColCop).Value
End If
Next iCounter
Set iMsg = CreateObject("CDO.Message")
Set iConf = CreateObject("CDO.Configuration")
iConf.Load -1 ' CDO Source Defaults
Set Flds = iConf.Fields
On Error GoTo Saida
With Flds
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "meuservido" - Aqui coloco o meu servidor
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
.Update
End With
With iMsg
Set .Configuration = iConf
.To = Destinatarios
.CC = Copiatarios
.BCC = ""
.From = """Smart Prevent"" " - Aqui coloco o e-mail de quem está enviando, no meu caso, uma conta genérica
.Subject = "Aviso: Nova Ocorrência Cadastrada - Número " & frmCadastrosocorrencias.cboCodigoacidente.Value
.TextBody = strbody
.Send
End With
Saida:
If Err <> 0 Then
'Response.Write "Ocorreu um Erro: " & Err.Description
End If
Set iMsg = Nothing
Set iConf = Nothing
Set Flds = Nothing
End Sub