Tenho um form, que tem um botão enviar email, porém estava dando muitos problemas com um campo "E-mail" pq não sabiamos de quem era o email etc..
o que eu fiz, criei uma tabela tbl_clientes_contatos com uma chave estrangeira chamada parceiros que liga na tbl_clientes pra cada contato fazer referencia a uma chave primaria na tbl_clientes. até aí tudo bem,
era muito facil no Form Frm_Cartas_Alt colocar neste codigo abaixo objMail.To = (Me!Email) porém, eu preciso tá pegando os emails que estão lá e que estão marcados como "enviarcartas = true" porém eu até consigo com CurrentDb.Execute
o que eu não consigo é puxar o que está somente marcado como enviarcartas = true e também não consigo fazer um montante
tipo email1@email1.com.br; email2@email2.com.br; email3@email3.com.br
pra colocar no outlook dessa forma, o que acontece ele sempre puxa o ultimo email da tbl_clientes_contatos.
Dim strArquivo As String
Dim strLocal As String
Dim objOut As Object
Dim objMail As Object
Dim objAnexo As Object
Dim objTo As Object
Const olMailItem = 0
Const olByValue = 1
Set objOut = CreateObject("Outlook.application")
Set objMail = objOut.CreateItem(olMailItem)
Set objAnexo = objMail.Attachments
'If IsNull(Me!email) Then
' MsgBox "O campo Email deve ser preenchindo.", vbCritical, "PriceLetters"
' Me.email.SetFocus
' Exit Sub
If IsNull(Me!AssuntoEmail) Then
MsgBox "O campo Assunto deve ser preenchido.", vbCritical, "PriceLetters"
Me.AssuntoEmail.SetFocus
Exit Sub
ElseIf IsNull(Me!CorpoEmail) Then
MsgBox "O campo Corpo do E-mail deve ser selecionado.", vbCritical, "Price Letter"
Me.CorpoEmail.SetFocus
Me.CorpoEmail.Dropdown
Exit Sub
End If
Dim rs As DAO.Recordset
Me.Refresh
Set rs = CurrentDb.OpenRecordset("TBL_CLIENTES_CONTATOS")
rs.MoveFirst
Do While Not rs.EOF
CurrentDb.Execute "UPDATE TBL_CLIENTES SET Email = '" & rs!Email & "' WHERE Codigo = " & rs!parceiro, rs!enviarcartas = True & ";"
rs.MoveNext
Loop
rs.Close
Set rs = Nothing
objMail.To = (Me!Email)
objMail.Subject = (Me!AssuntoEmail)
o que eu fiz, criei uma tabela tbl_clientes_contatos com uma chave estrangeira chamada parceiros que liga na tbl_clientes pra cada contato fazer referencia a uma chave primaria na tbl_clientes. até aí tudo bem,
era muito facil no Form Frm_Cartas_Alt colocar neste codigo abaixo objMail.To = (Me!Email) porém, eu preciso tá pegando os emails que estão lá e que estão marcados como "enviarcartas = true" porém eu até consigo com CurrentDb.Execute
o que eu não consigo é puxar o que está somente marcado como enviarcartas = true e também não consigo fazer um montante
tipo email1@email1.com.br; email2@email2.com.br; email3@email3.com.br
pra colocar no outlook dessa forma, o que acontece ele sempre puxa o ultimo email da tbl_clientes_contatos.
Dim strArquivo As String
Dim strLocal As String
Dim objOut As Object
Dim objMail As Object
Dim objAnexo As Object
Dim objTo As Object
Const olMailItem = 0
Const olByValue = 1
Set objOut = CreateObject("Outlook.application")
Set objMail = objOut.CreateItem(olMailItem)
Set objAnexo = objMail.Attachments
'If IsNull(Me!email) Then
' MsgBox "O campo Email deve ser preenchindo.", vbCritical, "PriceLetters"
' Me.email.SetFocus
' Exit Sub
If IsNull(Me!AssuntoEmail) Then
MsgBox "O campo Assunto deve ser preenchido.", vbCritical, "PriceLetters"
Me.AssuntoEmail.SetFocus
Exit Sub
ElseIf IsNull(Me!CorpoEmail) Then
MsgBox "O campo Corpo do E-mail deve ser selecionado.", vbCritical, "Price Letter"
Me.CorpoEmail.SetFocus
Me.CorpoEmail.Dropdown
Exit Sub
End If
Dim rs As DAO.Recordset
Me.Refresh
Set rs = CurrentDb.OpenRecordset("TBL_CLIENTES_CONTATOS")
rs.MoveFirst
Do While Not rs.EOF
CurrentDb.Execute "UPDATE TBL_CLIENTES SET Email = '" & rs!Email & "' WHERE Codigo = " & rs!parceiro, rs!enviarcartas = True & ";"
rs.MoveNext
Loop
rs.Close
Set rs = Nothing
objMail.To = (Me!Email)
objMail.Subject = (Me!AssuntoEmail)