Ir para conteúdo
Fórum Script Brasil
  • 0

Como faço para Enviar email?


Gustavo Jorge

Pergunta

Boa tarde galera,

estou desenvolvendo um sisteminha bem simples, para controle de cadastros de item para a empresa que trabalho, porém não manjo muito do Access e nem do VBA.rss

Bom é o seguinte, estou precisando fazer funcionar um recurso do sistema, que é "quando eu clicar na caixa de seleção (akela quadradinha), o sistema envia um email para determinado destino com os campos que foram preenchidos.

Como posso fazer isso? É necessário programação?

Um abraço, agradeço desde já.

Gustavo

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Olá amigo ..

é necessário sim , ter uma programação para o envio automático de e-mails.

Segue abaixo um exemplo de como fazer isso, ele envia uma parte selecionada para um e-mail (Envia um ranger)

esta comentada o que cada comando vai fazer ok.

Copie o código abaixo e coloque em um módulo dentro do VBA (Visual Basic Application)

abraços e espero ter ajudado. ^_^

Sub Mail_Range()
Dim Source As Range
Dim Destwb As Workbook
Dim wb As Workbook
Dim TempFilePath As String
Dim TempFileName As String
Dim FileExtStr As String
Dim FileFormatNum As Long

Set Source = Nothing
On Error Resume Next
Set Source = Range("A1:K50").SpecialCells(xlCellTypeVisible)
On Error GoTo 0

If Source Is Nothing Then
   MsgBox "A celula para enviar esta protegida , ou a planilha esta protegida, apos resolver o problema, tente novamente .", vbOKOnly
   Exit Sub
End If
' desabilita algunas funcoes
With Application
   .ScreenUpdating = False
   .EnableEvents = False
End With

Set wb = ActiveWorkbook
Set Destwb = Workbooks.Add(xlWBATWorksheet)

Source.Copy
' Seleciona a regiao a ser enviada o e-mail
With Destwb.Sheets(1)
   .Cells(1).PasteSpecial Paste:=8
   .Cells(1).PasteSpecial Paste:=xlPasteValues
   .Cells(1).PasteSpecial Paste:=xlPasteFormats
   .Cells(1).Select
   Application.CutCopyMode = False
End With
'  verifica o local a salvar o arquivo
TempFilePath = Environ$("temp") & "\"
' Da um nome para salvar o arquivo e a data
TempFileName = "Selection of " & wb.Name & " " & Format(Now, "dd-mmm-yy h-mm-ss")
' faz a Verificacao da versao do seu office
If Val(Application.Version) < 12 Then
   ' Verifica se esta usando Excel 2000 ou Excel 2003.
   FileExtStr = ".xls": FileFormatNum = -4143
Else
   ' Verificar se esta usando Excel 2007.
   FileExtStr = ".xlsx": FileFormatNum = 51
End If
' salva e envia o e-mail 
With Destwb
   .SaveAs TempFilePath & TempFileName & FileExtStr, FileFormat:=FileFormatNum
   On Error Resume Next
   .SendMail "someone@example.com", "Titulo do e-mail"
   On Error GoTo 0
   .Close SaveChanges:=False
End With

' Deleta o arquivo temporario criado para envio.
Kill TempFilePath & TempFileName & FileExtStr
' Ativa novamente funcoes
With Application
   .ScreenUpdating = True
   .EnableEvents = True
End With
End Sub

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...