Outlook VBA to open Excel attachment and send recipient's email address to a workbook cell?

Status
Not open for further replies.

Dan Smith

Member
Outlook version
Email Account
Exchange Server 2007
Hello All,

Using VBA with Outlook 2007, is it possible to open an Excel attachment from an unsent new or reply email message, pass the recipient's email address from the "To:" field to a cell in the workbook that was just opened and then close the email message?

After several months of trying to send cell data from an attached Excel 2007 workbook to the open but unsent Outlook 2007 new or reply message, I realized I may be looking at the task from the wrong direction.

Any help would be sincerely appreciates, thanks!
 
It would be possible. This will save the attachment from the open message and open it - you'll need to reference Excel and grab the value from the desired cell.


Code:
Dim oItem As Outlook.MailItem
Dim strfile As String
Dim sText As String

Private Declare Function ShellExecute Lib "shell32.dll" Alias _
  "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, _
  ByVal lpFile As String, ByVal lpParameters As String, _
  ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Sub OpenExcel()
    Dim oApp As Object, oNS As Object, oInbox As Object
    Dim oAttach As Object
    Dim FileName As String
    Dim enviro As String
   
    enviro = CStr(Environ("USERPROFILE"))
    FileName = enviro & "\Documents\"


    Set oApp = Outlook.Application
    Set oItem = oApp.ActiveInspector.CurrentItem

       If oItem.Attachments.count <> 0 Then
            For Each oAttach In oItem.Attachments
            strfile = FileName & oAttach.FileName
                oAttach.SaveAsFile strfile
                Exit For
            Next
        Else
            MsgBox "The message doesn't have an attachment"
        End If
   
 ShellExecute 0, "open", strfile, vbNullString, vbNullString, 0
 CopyFromExcel
 oItem.To = sText
 End Sub


Sub CopyFromExcel()
 Dim xlApp As Object
 Dim xlWB As Object
 Dim xlSheet As Object
               
     On Error Resume Next
     Set xlApp = GetObject(, "Excel.Application")
     If Err <> 0 Then
         Application.StatusBar = "Please wait while Excel source is opened ... "
         Set xlApp = CreateObject("Excel.Application")
         bXStarted = True
     End If
     On Error GoTo 0
     'Open the workbook to input the data
     Set xlWB = xlApp.Workbooks.Open(strfile)
     Set xlSheet = xlWB.Sheets("Sheet1")

     sText = xlSheet.Range("A1")
     xlWB.Close 1
     If bXStarted Then
         xlApp.Quit
     End If
     
     Set xlApp = Nothing
     Set xlWB = Nothing
     Set xlSheet = Nothing
 End Sub
 
Thank you for your response and I sincerely appreciate you taking your time to respond to my question. Your code works perfectly for inputting cell data from the newly opened Excel document into the "To:" address filed of a new message but I am actually looking to do the reverse. Is there a way to send the recipients email address from the "To:" field to a cell in the newly opened Excel attachment? Thank you for your help!
 
Status
Not open for further replies.
Similar threads
Thread starter Title Forum Replies Date
J Open an outlook email by Subject on MS Access linked table with VBA Outlook VBA and Custom Forms 10
Diane Poremsky Outlook VBA: Work with Open Item or Selected Item Using Outlook 0
C Open/Close Outlook - Via Excel VBA Using Outlook 2
M Outlook 2k7 - open a mdb in vba Using Outlook 1
W Using Excel UserForm from Open Workbook in Outlook VBA Outlook VBA and Custom Forms 5
Geldner Problem submitting SPAM using Outlook VBA Form Outlook VBA and Custom Forms 2
P VBA to add email address to Outlook 365 rule Outlook VBA and Custom Forms 0
M Outlook 2016 outlook vba to look into shared mailbox Outlook VBA and Custom Forms 0
D Outlook VBA forward the selected email to the original sender’s email ID (including the email used in TO, CC Field) from the email chain Outlook VBA and Custom Forms 3
L Fetch, edit and forward an email with VBA outlook Outlook VBA and Custom Forms 2
BartH VBA no longer working in Outlook Outlook VBA and Custom Forms 1
W Can vba(for outlook) do these 2 things or not? Outlook VBA and Custom Forms 2
richardwing Outlook 365 VBA to access "Other Actions" menu for incoming emails in outlook Outlook VBA and Custom Forms 0
J Outlook Rules VBA Run a Script - Multiple Rules Outlook VBA and Custom Forms 0
C Outlook (desktop app for Microsoft365) restarts every time I save my VBA? Using Outlook 1
E Outlook 365 Outlook/VBA Outlook VBA and Custom Forms 11
J VBA for outlook to compare and sync between calendar Outlook VBA and Custom Forms 1
E Outlook VBA change GetDefaultFolder dynamically Outlook VBA and Custom Forms 6
S vba outlook search string with special characters Outlook VBA and Custom Forms 1
U Outlook 2019 VBA run-time error 424 Outlook VBA and Custom Forms 2
G VBA to save selected Outlook msg with new name in selected network Windows folder Outlook VBA and Custom Forms 1
F Excel VBA to move mails for outlook 365 on secondary mail account Outlook VBA and Custom Forms 1
K Outlook Office 365 VBA download attachment Outlook VBA and Custom Forms 2
V vBA for searching a cell's contents in Outlook and retrieving the subject line Outlook VBA and Custom Forms 1
B vBA for exporting excel file from outlook 2016 Outlook VBA and Custom Forms 3
S Excel vba code to manage outlook web app Using Outlook 10
H Custom Outlook Contact Form VBA Outlook VBA and Custom Forms 1
S Problem Checking the available stores in my Inbox (Outlook VBA) Outlook VBA and Custom Forms 0
S Outlook VBA How to adapt this code for using in a different Mail Inbox Outlook VBA and Custom Forms 0
O VBA Outlook Message Attachment - Array Index Out of Bounds Outlook VBA and Custom Forms 0
J Want to learn VBA Macros for Outlook. What book can you recommend? Outlook VBA and Custom Forms 2
M Outlook 2013 reminder email by using Outlook vba Outlook VBA and Custom Forms 2
D Outlook VBA error extracting property data from GetRules collection Outlook VBA and Custom Forms 10
O Email not leaving Outbox when using Excel VBA to sync Outlook account Outlook VBA and Custom Forms 4
L Moving emails with similar subject and find the timings between the emails using outlook VBA macro Outlook VBA and Custom Forms 1
B Outlook Business Contact Manager with SQL to Excel, User Defined Fields in BCM don't sync in SQL. Can I use VBA code to copy 1 field to another? BCM (Business Contact Manager) 0
N How can I increase/faster outlook VBA Macro Speed ? Using Outlook 2
N Outlook Email Rule execution through shortcut keys (VBA codes) Using Outlook 1
A VBA Code in Outlook disappears after first use Outlook VBA and Custom Forms 1
dweller Outlook 2010 Rule Ignores VBA Script Outlook VBA and Custom Forms 2
G Outlook VBA and Google Calendar ("Events") Outlook VBA and Custom Forms 1
J VBA Outlook : Subject line : Cut and Paste name to heading , number to very end of the body of Email Outlook VBA and Custom Forms 1
B Advanced Search in MS Outlook by VBA and SQL Outlook VBA and Custom Forms 2
K Outlook Archive to PST Files by Date Range VBA Script? Outlook VBA and Custom Forms 1
J Help Please!!! Outlook 2016 - VBA Macro for replying with attachment in meeting invite Outlook VBA and Custom Forms 9
S Find a cell value in excel using outlook vba Using Outlook 1
J Execute Add-In Button from VBA Outlook 2016 Outlook VBA and Custom Forms 1
D create an html table in outlook custom form 2010 using vba in MsAccess Outlook VBA and Custom Forms 7
M Slow VBA macro in Outlook Outlook VBA and Custom Forms 5
T Outlook AntiSpam with VBA Outlook VBA and Custom Forms 1

Similar threads

Back
Top