Solved

Not receiving message when bcc vba

Posted on 2008-10-09
2
532 Views
Last Modified: 2013-11-27
Hello experts,

I am trying to send email via VBA from Access.  Everything works find except for Bcc.  I am not getting the message on Bcc.  Please help.  Here is the code I am using.  Thank you.
Private Sub SendEmail(strEmailAdd As String, strFrom As String, strBody As String, _
                      strSubject As String, strCc As Variant, strBcc As Variant)
On Error GoTo errHandler
 
Dim objOutlook As Outlook.Application
Dim objOutlookMsg As Outlook.MailItem
Dim objOutlookRecip As Outlook.Recipient
Dim objOutlookAttach As Outlook.Attachment
Dim objOutlookFrom As Outlook.MailItem
Dim objOutlookInbox As Outlook.MAPIFolder
 
' Create the Outlook session.
Set objOutlook = CreateObject("Outlook.Application")
 
' Create the message.
Set objOutlookMsg = objOutlook.CreateItem(olMailItem)
 
With objOutlookMsg
 
' Set sender
.SentOnBehalfOfName = strFrom
 
' Add the To recipient(s) to the message. This can be a variable or pulled form a table if desired.
Set objOutlookRecip = .Recipients.Add(strEmailAdd)
objOutlookRecip.Type = olTo
 
' Add the Cc recipient(s) to the message.
If Not ISNULL(strCc) Then
   .CC = strCc
End If
 
' Add the Bcc recipient(s) to the message.
If Not ISNULL(strBcc) Then
    .BCC = strBcc
End If
 
 
' Set the Subject, Body, and Importance of the message.
.Subject = strSubject
.HTMLBody = strBody
.Importance = olImportanceNormal  'Normal importance
 
' Resolve each Recipient's name.
        For Each objOutlookRecip In .Recipients
            objOutlookRecip.Resolve
        Next
        If Not .Recipients.ResolveAll Then
            For Each objOutlookRecip In .Recipients
                If Not objOutlookRecip.Resolved Then
                    MsgBox "Error on e-mail name " & objOutlookRecip & ". I will open the e-mail so you can correct it before you send it."
                End If
            Next
        .Display
        Else:
            .Save
            .Send
        End If
    End With
    
exitHere:
    Set objOutlook = Nothing
    Exit Sub
 
errHandler:
    Select Case Err
        Case Else
            MsgBox "Error Number: " & Err.Number & vbNewLine & "Description: " & Err.Description, vbCritical, "Error"
        GoTo exitHere
    End Select
End Sub

Open in new window

0
Comment
Question by:fcoit
2 Comments
 
LVL 16

Expert Comment

by:Chuck Wood
ID: 22682985
According to the Outlook help, the BCC property contains the display names only. The recipients collection should be used modify the BCC recipients.

Here is an example:

I hope that help you.

-Chuck
Public Sub TestBCC()
    Dim item As MailItem, rcp As Recipient
    Set item = Application.CreateItem(olMailItem)
    Set rcp = item.Recipients.Add("John Grande<jgrande@somewhere.com>")
    rcp.Type = olBCC
    item.Display
End Sub

Open in new window

0
 

Accepted Solution

by:
fcoit earned 0 total points
ID: 22683033
Hi Chuck,

Thank you for your response.  I think it is working now.  I using the same address for both the CC and BCC.  I changed that and it is working.  Thank you.
0

Featured Post

Use Case: Protecting a Hybrid Cloud Infrastructure

Microsoft Azure is rapidly becoming the norm in dynamic IT environments. This document describes the challenges that organizations face when protecting data in a hybrid cloud IT environment and presents a use case to demonstrate how Acronis Backup protects all data.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

When you are entering numbers in a speadsheet, and don't remember what 6×7 is, you just type “=6*7" instead. It works in every cell! This is not so in Access. To enter the elusive 42 in a text box, you have to find a calculator, and then copy the re…
Experts-Exchange is a great place to come for help with solutions for your database issues, and many problems are resolved within minutes of being posted.  Others take a little more time and effort and often providing a sample database is very helpf…
Basics of query design. Shows you how to construct a simple query by adding tables, perform joins, defining output columns, perform sorting, and apply criteria.
With Microsoft Access, learn how to specify relationships between tables and set various options on the relationship. Add the tables: Create the relationship: Decide if you’re going to set referential integrity: Decide if you want cascade upda…

820 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question