• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1213
  • Last Modified:

Create an email form


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.

  • 2
1 Solution
Jeffrey CoachmanMIS LiasonCommented:

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

d10u4vAuthor Commented:

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
            '.DeleteAfterSubmit = True   'This would let Outlook send th note without storing it in your sent bin
            End With
            'MsgBox MailOutLook.Body
            Exit Sub
            MsgBox "An error was encountered." & vbCrLf & "The error message is: " & Err.Description
            Resume Error_out
End Sub

Open in new window

Jeffrey CoachmanMIS LiasonCommented:

To select/Add Multiple attachments from a list box, use code similar to this:


Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now