Outlook SendUsingAccount to change from account

  • Thread starter Thread starter p912s
  • Start date Start date
Status
Not open for further replies.
P

p912s

Hello! I have searched all over the web and have been unable to locate a

solution... the closest I came was a thread on here so I joined.

My problem is sending a message after changing the sending account in

VBA. I get an error - "You Cannot Send An Item That Is Already In The

Process Of Being Sent"

Here is the thread that talked about a solution using a timer to get

the message sent but I don't understand how to implement a timer in

Outlook - http://tinyurl.com/r79d4w

And here is my code - fairly simple, it gathers up the pop3 accounts

and presents them in a popup message to select the account to send from.

The selecting and changing accounts works fine but the messages can't be

sent. I have documented in the code where the error happens.

Thanks.

Option Explicit

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As

Boolean)

Dim oAccount As Outlook.Account

Dim strDefaultAccount As String, strMsg As String, strID As String

Dim strAccounts(100)

Dim c As Integer, i As Integer

Dim result As Variant

c = 1

'get default account

strDefaultAccount = Application.Session.Accounts(1).DisplayName

'get pop3 accounts

For Each oAccount In Application.Session.Accounts

If oAccount.AccountType = olPop3 Then

strAccounts(c) = c & " - " & oAccount

'Debug.Print strAccounts(c)

c = c + 1

End If

Next

'build inputbox account list

strMsg = "Click Ok to use default account or enter the number of

the account to use...." & vbCrLf

For i = 1 To c

strMsg = strMsg & vbCrLf & strAccounts(i)

Next i

'********************************************************

'message id

'I think this is the id i need to recall and send the message?

strID = Item.ConversationIndex

'********************************************************

'display inputbox

result = InputBox(strMsg, "Select Sending Account",

strDefaultAccount)

'act on user input

Select Case result

Case strDefaultAccount

'clicked ok - send from default account

Cancel = True

Set Item.SendUsingAccount =

Application.Session.Accounts(1)

'********************************************************

'send error - "You Cannot Send An Item That Is Already In

The Process Of Being Sent"

Item.Send

'********************************************************

Case IsNumeric(result)

'typed a number

If result <= i Then

Cancel = True

Set Item.SendUsingAccount =

Application.Session.Accounts(result)

'********************************************************

'send error - "You Cannot Send An Item That Is Already

In The Process Of Being Sent"

Item.Send

'********************************************************

Else

'entered incorrect number - stay in message

Cancel = True

End If

Case Else

'clicked cancel or invalid entry - stay in message

Cancel = True

End Select

End Sub

--
 
Application_ItemSend() is too late, the item has already been submitted to

the mail transport by that time with the original email address. Handle that

earlier in the Item.Send() event.

 
Thanks for the reply!

The above code is run from ThisOutlookSession so that when you click

the Send button on a message you're prompted to set the sending account.

Which as you point is to late to change the account.

In that code window my only choices are General and Application... the

only way I know I could get the Item.Send event would be to call it from

a button on a form. And I have tried that, in the Application.Send, set

Cancel =True and then call my form. And then from the form, set the

sending account and try and send the message, but I get the same error.

Is there any way to change the sending account after I have clicked the

Send Button?

Or can I edit the default email message and place my code behind the

Send Button?

Thanks.

p912s
 
In ThisOutlookSession put something like this at the module level:

Dim WithEvents colInsp As Outlook.Inspectors

Dim WithEvents oMail As Outlook.MailItem

In the Application_Startup() event handler instantiate the Inspectors

collection:

Set colInsp = Application.Inspectors

That will let you handle the NewInspector() event. In that event handler

something like this:

If Inspector.CurrentItem.Class = olMail Then

Set oMail = Inspector.CurrentItem

End If

That will let you handle the oMail.Send() event, which fires when you click

the Send button.

 
Status
Not open for further replies.
Similar threads
Thread starter Title Forum Replies Date
S Macro using .SendUsingAccount only works the first time, after starting Outlook Outlook VBA and Custom Forms 4
S Rule not running in Outlook Classic unless... Using Outlook 9
J column with actual email address in Outlook Classic Using Outlook 2
S Not receving all email since converting from Outlook 2007 to Outlook Classic Using Outlook 3
Rupert Dragwater Outlook 365 taking too long to synchronize each time email is being checked Using Outlook 17
Hornblower409 Outlook VBA Code Example - Unified inbox in Outlook Classic Outlook VBA and Custom Forms 5
J Need replacement for iTunes to locally (USB) sync. iPhone 17 to Classic Outlook 2024 Using Outlook 4
Thomas Fast Best way to manage incoming customer emails automatically in Outlook? Using Outlook 1
I Outlook 2024 Windows 11 Gmail - sudden log in problems Using Outlook 13
S Outlook Classic on 2024 Using Outlook 10
L Fresh Install of Windows 11, saved previous image, how to retrieve Outlook Contacts Using Outlook 10
C Can't Use Custom Contact form in Outlook Classic since early January 2026 Outlook VBA and Custom Forms 7
e_a_g_l_e_p_i Need help updating email in Outlook 2021 Using Outlook 10
V Outlook spam filter misbehaving Using Outlook 9
L what are the downsides of running both classic and new outlook on same win 11 pc? Using Outlook 2
P Preventing permanent deletions in Outlook on the Web Using Outlook 0
L any trick to embedding images in new outlook and outlook on the web contacts? Using Outlook 4
L new outlook contacts searching Using Outlook 5
R Outlook 2010 Outlook 2010 migration question Using Outlook 2
W New Outlook PEOPLE blank Using Outlook 6
C New Outlook issues with Gmail, particularly labels/folders Using Outlook 3
E What is the next workaround for macro in New Outlook 1.2025.1111.100 Outlook VBA and Custom Forms 3
E Need to digitally sign macro but VBA\Outlook crash Outlook VBA and Custom Forms 4
P Outlook 2003 no longer opens "without" Folder List Showing in Navigation Pane Using Outlook 2
Hornblower409 Outlook 2010 - Never ending update Using Outlook 0
V Outlook created new profile? Using Outlook 1
J Outlook inbox question Using Outlook 4
T How to Add AT&T Contacts to Outlook 365 Using Outlook 5
F Outlook 2021 outlook on iPhone Using Outlook 1
F Outlook 2021 Outlook on iPhone asks for password Using Outlook 0
P ics calendar entries suddenly open up new Outlook Using Outlook 3
P Outlook "forgets" password until system rebooted Using Outlook 2
N Why does Outlook keeping adding to the email address I have in my notes portion of a contact? Using Outlook 2
M Anyone integrated AI website builders with Outlook for automated client communications? Using Outlook 4
V Gmail in Outlook Using Outlook 2
T Where has the Copilot icon gone in my Outlook desktop client? Using Outlook 10
P New way by Microsoft to get people to use the new Outlook Using Outlook 4
C How to keep emails in account in Outlook after closing the IMAP account Using Outlook 1
cymumtaz IMAP calendars in New Outlook Using Outlook 5
T Constantly Have To Log In To Outlook On The Web Using Outlook.com accounts in Outlook 2
T Cannot Find Outlook Noted On Android Using Outlook 4
O Outlook 2024 not showing that messages are replied to or forwarded Using Outlook 3
C Outlook 365 send/receive takes FOREVER - as in 40 minutes Using Outlook 7
I Outlook 2024 LTSC syncing with iCloud calendar - can only make appt. in iCloud Using Outlook 2
Kika Melo Outlook ribbon customisations do not 'stick' Using Outlook 12
J IMAP Folders Confusion in Windows Classic Outlook Using Outlook 1
A Missing Sent Emails in New Outlook Using Outlook 18
S Missing categories in Outlook calendar Using Outlook 10
P Windows 11 tries to open New Outlook when the user clicks on the mail icon on a news article Using Outlook 2
C I don't understand Outlook or Microsoft, anymore Using Outlook 12

Similar threads

Back
Top