Link to home
Start Free TrialLog in
Avatar of d10u4v
d10u4vFlag for United Kingdom of Great Britain and Northern Ireland

asked on

Create an email form

Hi,

Im trying to create an email form in my cutsomer contacts database.  The form includes a [To] field, a [message] field and a group of tick boxes which will allow the user to select PDF files to attach to the email.  I have a few question regarding this:

1) Does the form need to be linked to a table?  I don't really need to save the emails especially if i use outlook to send the email as they will be stored there in the sent folder.

2)My [Message] field on the form is a text box set to rich text format, however, how do i enable the return key so that it doesn't move to the next field but adds a carriage return instead?

3)This is the main one - how would i email from this form?  I have used email in access before, but mainly for inhouse emails/notifications.  how would i attach the checked PDF files to the email?

I know this is a lot to ask, and i'm not sure if it can be done at all.  I hope someone can point me in the right direction and i look forward to hearing from you.

Tom
Avatar of Jeffrey Coachman
Jeffrey Coachman
Flag of United States of America image

d10u4v,

I can get this to work for Outlook 2003,

But the object model for Outlook changed in 2007.

I will try to test this at work tomorrow with Outlook 2007

JeffCoachman
Avatar of d10u4v

ASKER

HI,

I have been working on this myself and have been able to put together this code which works fine for check boxes on the form, but i am considering moving over to a list box which will be populated from a table which will store the full path and a description of the PDF file.  I'm unsure as to how to add the selected item from the list box to the .Attachements.Add of the code...

 
Private Sub cmdSend_email_Click()
 
        Dim mess_body As String
        Dim appOutLook As Outlook.Application
        Dim MailOutLook As Outlook.MailItem
        Set appOutLook = CreateObject("Outlook.Application")
        Set MailOutLook = appOutLook.CreateItem(olMailItem)
            
            Set appOutLook = CreateObject("Outlook.Application")
            Set MailOutLook = appOutLook.CreateItem(olMailItem)
            With MailOutLook
            .BodyFormat = olFormatRichText
            .to = Me.email_address
            .Subject = Me.mess_subject
            .HTMLBody = Me.mess_text
            Dim ctrl As Control
For Each ctrl In Me.Controls
 If TypeOf ctrl Is CheckBox Then
        If ctrl.Value = -1 Then
               .Attachments.Add (ctrl.Tag)
        End If
 End If
Next
 
            '.DeleteAfterSubmit = True   'This would let Outlook send th note without storing it in your sent bin
            .Send
            End With
            'MsgBox MailOutLook.Body
            Exit Sub
email_error:
            MsgBox "An error was encountered." & vbCrLf & "The error message is: " & Err.Description
            Resume Error_out
Error_out:
End Sub

Open in new window

ASKER CERTIFIED SOLUTION
Avatar of Jeffrey Coachman
Jeffrey Coachman
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial