マクロを使ったBCCの自動送信設定(2)

BCCの自動設定・送信用マクロ作成例

Contents
  • 設定手順
  • BCCの自動設定・送信用マクロ作成例

ここでは、Outlookでメールを送信する際にBCCを自動設定して送信するためのマクロの作成例を紹介します。具体的な設定手順については本文を参照してください。

送信先アカウントが一つの場合

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
Private Sub Application_ItemSend(ByVal Item As Object, _
Cancel As Boolean)
Dim objRecip As Recipient
Dim strMsg As String
Dim res As Integer
Dim strBcc As String
On Error Resume Next
strBcc = "your-adress@gmail.com"
' Use the account name as it appears in Account Settings
If Item.SendUsingAccount = "プロバイダ - your-adress@provider.com" Then
Set objRecip = Item.Recipients.Add(strBcc)
objRecip.Type = olBCC
If Not objRecip.Resolve Then
strMsg = "Could not resolve the Bcc recipient. " & _
"Do you want to send the message?"
res = MsgBox(strMsg, vbYesNo + vbDefaultButton1, _
"Could Not Resolve Bcc")
If res = vbNo Then
Cancel = True
End If
End If
End If
Set objRecip = Nothing
End Sub
Private Sub Application_ItemSend(ByVal Item As Object, _ Cancel As Boolean) Dim objRecip As Recipient Dim strMsg As String Dim res As Integer Dim strBcc As String On Error Resume Next strBcc = "your-adress@gmail.com" ' Use the account name as it appears in Account Settings If Item.SendUsingAccount = "プロバイダ - your-adress@provider.com" Then Set objRecip = Item.Recipients.Add(strBcc) objRecip.Type = olBCC If Not objRecip.Resolve Then strMsg = "Could not resolve the Bcc recipient. " & _ "Do you want to send the message?" res = MsgBox(strMsg, vbYesNo + vbDefaultButton1, _ "Could Not Resolve Bcc") If res = vbNo Then Cancel = True End If End If End If Set objRecip = Nothing End Sub
Private Sub Application_ItemSend(ByVal Item As Object, _
                                 Cancel As Boolean)
    Dim objRecip As Recipient
    Dim strMsg As String
    Dim res As Integer
    Dim strBcc As String
    On Error Resume Next

    strBcc = "your-adress@gmail.com"

' Use the account name as it appears in Account Settings
If Item.SendUsingAccount = "プロバイダ - your-adress@provider.com" Then

    Set objRecip = Item.Recipients.Add(strBcc)
    objRecip.Type = olBCC
    If Not objRecip.Resolve Then
        strMsg = "Could not resolve the Bcc recipient. " & _
                 "Do you want to send the message?"
        res = MsgBox(strMsg, vbYesNo + vbDefaultButton1, _
                "Could Not Resolve Bcc")
        If res = vbNo Then
            Cancel = True
        End If
    End If

End If

    Set objRecip = Nothing
End Sub
  • 9行目の “your-adress@gmail.com“の部分を自分のGmailアドレス(BCCの宛先)に書き換えます。
  • 12行目の”プロバイダ – your-adress@provider.com“の部分を自動BCCを有効にしたい自分のアカウント名に書き換えます。
  • このアカウント名は一字一句正確に入力する必要があります。メールアカウント設定画面を開いてコピペするのが確実です。

送信アカウントが複数ある場合

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
Private Sub Application_ItemSend(ByVal Item As Object, _
Cancel As Boolean)
Dim objRecip As Recipient
Dim strMsg As String
Dim res As Integer
Dim strBcc As String
On Error Resume Next
strBcc = "your-adress@gmail.com"
' Use the account name as it appears in Account Settings
If Item.SendUsingAccount = "プロバイダ - your-adress@provider.com" Then
Set objRecip = Item.Recipients.Add(strBcc)
objRecip.Type = olBCC
If Not objRecip.Resolve Then
strMsg = "Could not resolve the Bcc recipient. " & _
"Do you want to send the message?"
res = MsgBox(strMsg, vbYesNo + vbDefaultButton1, _
"Could Not Resolve Bcc")
If res = vbNo Then
Cancel = True
End If
End If
End If
' Use the account name as it appears in Account Settings
If Item.SendUsingAccount = "プロバイダ2 - your-adress2@provider.com" Then
Set objRecip = Item.Recipients.Add(strBcc)
objRecip.Type = olBCC
If Not objRecip.Resolve Then
strMsg = "Could not resolve the Bcc recipient. " & _
"Do you want to send the message?"
res = MsgBox(strMsg, vbYesNo + vbDefaultButton1, _
"Could Not Resolve Bcc")
If res = vbNo Then
Cancel = True
End If
End If
End If
Set objRecip = Nothing
End Sub
Private Sub Application_ItemSend(ByVal Item As Object, _ Cancel As Boolean) Dim objRecip As Recipient Dim strMsg As String Dim res As Integer Dim strBcc As String On Error Resume Next strBcc = "your-adress@gmail.com" ' Use the account name as it appears in Account Settings If Item.SendUsingAccount = "プロバイダ - your-adress@provider.com" Then Set objRecip = Item.Recipients.Add(strBcc) objRecip.Type = olBCC If Not objRecip.Resolve Then strMsg = "Could not resolve the Bcc recipient. " & _ "Do you want to send the message?" res = MsgBox(strMsg, vbYesNo + vbDefaultButton1, _ "Could Not Resolve Bcc") If res = vbNo Then Cancel = True End If End If End If ' Use the account name as it appears in Account Settings If Item.SendUsingAccount = "プロバイダ2 - your-adress2@provider.com" Then Set objRecip = Item.Recipients.Add(strBcc) objRecip.Type = olBCC If Not objRecip.Resolve Then strMsg = "Could not resolve the Bcc recipient. " & _ "Do you want to send the message?" res = MsgBox(strMsg, vbYesNo + vbDefaultButton1, _ "Could Not Resolve Bcc") If res = vbNo Then Cancel = True End If End If End If Set objRecip = Nothing End Sub
Private Sub Application_ItemSend(ByVal Item As Object, _
                                 Cancel As Boolean)
    Dim objRecip As Recipient
    Dim strMsg As String
    Dim res As Integer
    Dim strBcc As String
    On Error Resume Next

    strBcc = "your-adress@gmail.com"

' Use the account name as it appears in Account Settings
If Item.SendUsingAccount = "プロバイダ - your-adress@provider.com" Then

    Set objRecip = Item.Recipients.Add(strBcc)
    objRecip.Type = olBCC
    If Not objRecip.Resolve Then
        strMsg = "Could not resolve the Bcc recipient. " & _
                 "Do you want to send the message?"
        res = MsgBox(strMsg, vbYesNo + vbDefaultButton1, _
                "Could Not Resolve Bcc")
        If res = vbNo Then
            Cancel = True
        End If
    End If

End If

' Use the account name as it appears in Account Settings
If Item.SendUsingAccount = "プロバイダ2 - your-adress2@provider.com" Then

    Set objRecip = Item.Recipients.Add(strBcc)
    objRecip.Type = olBCC
    If Not objRecip.Resolve Then
        strMsg = "Could not resolve the Bcc recipient. " & _
                 "Do you want to send the message?"
        res = MsgBox(strMsg, vbYesNo + vbDefaultButton1, _
                "Could Not Resolve Bcc")
        If res = vbNo Then
            Cancel = True
        End If
    End If

End If

    Set objRecip = Nothing
End Sub

自分に合わせたコードへの書き換えが必要な個所は、前述の「送信先アカウントが一つの場合」と同じです。必要な数だけ11~26行目を繰り返してアカウントを追加します(上記の例では28~43行目が繰り返し部分)。