Excel 2010 :: VBA Error When File Opened From Email?
Aug 30, 2012
I've got a file that works fine on my computer. When I email it to anyone with 2010 and they open it from their email account (Outlook 2010), the file automatically opens up in 'Protected Mode'. If the user selects "Enable Editing" the user receives 'Run Time error 91: Object variable or with block variable not set'.
If the user closes out the vba error and saves the file to their computer and reopens the file, it works fine.
BTW, it is not a complex macro, it is error out at
I've been using a macro successfully for the last couple of years, but this morning when I went to use it, it decided to fail. I have a workbook which contains various spreadsheets. The macro that has failed performs the following tasks:
1. It copies a list of email addresss from an external workbook to a sheet in the current workbook (still works) 2. It copies the referral sheet I want to send to a new file, and saves it with an appropriate filename to an appropriate folder (still works) 3. The macro then creates an email with a standard subject line, attaches the new worksheet and emails it to each of the addresses as above (broken)
The error message is from Microsoft Visual Basic. "Run-time error '1004': Mail system failure. Check your mail installation."
I'm guessing there is a setting somewhere in Excel that has changed as part of an update.
I've been through a number of the options in the developer menu to remove any obvious restrictions (& reopened excel afterwards), but so far it hasn't resolved the problem.
For what it's worth, here is the macro code.
With Application .EnableEvents = False .ScreenUpdating = False End With Run "PullInSheet1" Dim oldbook As String
In case you're wondering about the pullinsheet code, I'll add it below - but I probably grabbed it from this forum a couple of years ago (like some of the above) & just made some changes.
Code: Sub PullInSheet1() Dim AreaAddress As String '''''' Sheet11.UsedRange.Clear Dim ClRange As String ClRange = "= 'L:ADMINEMPLOY SERVICES" _
There are a couple of things I've wanted to do to improve the macro, but I couldn't justify the need to spend time working it out (since writing spreadsheets isn't really my job). Since it's broken at the moment, I can...
1. I'd like to create a subject line that reflects the name of the person being referred. For some reason though, anything other than text in the cell reference caused an error for me. eg, I tried using concatenate to create my subject line, but it didn't work.
2. I'd like the copied sheet to contain all of the formatting of the original sheet. Presumably there is a paste option that will do this and I just picked the wrong one.
The mailsystem we use is Groupwise 8. I couldn't find any settings in that program that have been changed, or that I could change.
I should change the extension from xls to xlsx in the code since I'm using Excel 2010 (but changing it doesn't fix the problem).
I have written a VBA procedure which loops through excel files in an array: in turn it opens the file, refreshes the data, saves the file and closes. I would like to write an error handler which stores the file which errored (copied from the loop iteration) and the error description to an array. The error handler should then close the file and continue with the next iteration - e.g.
Code: If ActiveWorkbook.ReadOnly Then ActiveWorkbook.Close Next i *Although a generic if error may be better.
My idea is that all files which errored in some way will be stored in an array which I can automatically print/send to a user so they can manually figure out the problem. (This element falls outside the range of this query).
Below is a simple example of my efforts which only contains one file in the array to make things simpler: the error handler section won't work, it's just there to show my thinking
Code: Sub Refresh_CRIS() On Error GoTo Errorhandler Dim routepath As String routepath = " chdfsSharedAreaPrivateTest" ChDir routepath
Errorhandler: On Error Resume Next Failed = Array(i) If ActiveWorkbook.ReadOnly Then 'Just an example for testing ActiveWorkbook.Close Else MsgBox "Pivots which failed to refresh:" & Failed '& ", ", 0, "Debug" 'Test with msgbox End If End Sub
I am using Excel 2010. I have been given a task at work that can save my team a lot of time if I can solve the problem. Every month, we have a spreadsheet with about 5000 rows that we have to email. In each row, there is a range that we have to email to a specific email. For example, I would have to copy and paste Range A2-R2 in the body of the email, and then email it to whatever email is in cell S2. I would then continue this for the next 5000 lines, making it a possibility that i will be sending 5000 emails manually.
I have been trying to come up with a solution through VBA that would automatically send these emails. My goal is to automatically send the Range A2-R2 to outlook email, then cell S2 into the "To" email address box, and then automatically send it. So far, i have successfully been able to send one row, but cannot figure out how to loop it for the remainder of the rows.
A couple other key points are that I have column headings as well (Range A1-R1). If possible, I want to be able to include the column headings in the email body as well. Example - first email would be range A1-R2. second email would be range A1-R1 and A3-R3, and so forth. The body of the email would also contain a standard script, such as "Please review the information below."
The goal here is to save everyone from having to send 5000+ manual emails. This would be a big boost for my team.
We know that professional emails have a fixed format. I have a list of people with their names and emails and there are some people for which emails are missing. I am pasting my sample data below. But first let me explain the meaning of columns.
Column A: Means full name of the person for which we have email id Column B & C: just split of Available full name into first name and last name Column D: Email id of the person with full name in column A Column E: For the names in this column, we need to get email ids Column H: Sample result
Now basis on the Full Name(Column A) and Email Id(Column D) can we get the email id for person in Column E.
Sheet4 A B C D E F G H
1 Available Full Name Available FirstName Available LastName Email for available full name Actual Full name Actual firstname Actual lastname Sample result
I am trying to send bulk emails from my excel 2010 - however I am getting a POP UP. find the screen shot in the enclosed word document So every time a new mail is sent from excel we need to press the button allow Is there a way where I can turn off this warning.
While opening one Excel file I get an error message saying that a 2nd file could not be opened because it cannot be found. I do not want this 2nd file to open. WHere do I find the "command" that is telling this 2nd file to open.
Using Excel 2010, I set up a simple workbook with a spreadsheet on one page and the ranges for data validation on another. I successfully linked the fields in the "Category" and "Tender" columns with the data on the second sheet, making nice drop down menus. Everything works fine on my computer. However, when we open the workbook on a different station, the drop down menus disappear. If you highlight any of the "Category" or "Tender" fields, the little drop down prompt is missing; they behave like regular, un-formatted fields. It appears that the data validation became un-linked.
We tried opening versions with certain fields locked (Mainly the Total, Breakdown, and Summary areas, but the fields with data validation were still editable), and also completely unlocked documents. Every time, the drop down lists were lost when opened on different stations.
I've attached the completely unlocked version : 00_FLEX TRAVEL EXPENSE REPORT_v3.xlsx
Forget to check a box or something? This seems way harder for me to figure out that it should be!
I use the vba to open excel file. like workbooks.open filename:=abc.xlsm but I found that if the file is opened by other. Excel still open the file but it will not notify user that it is opened as read only.
Would you add more line to notify user if the file is opened by other?
I call it from a macro. It is supposed to write some temporary files, and close them in the end, and delete them. Sometimes, the dll can't close properly, and the text files remain open.
With error treatment in my macro, I can continue execution, but i need to delete that files.
Since the dll DOES NOT CLOSE the files, i'm not able to delete them in my macro.
I need some way to close that files, in order to delete them.
When I use GetFile to reference the file, it remains as "File", which does not accept "Close" method. I can reference the file with myfile.OpenAsTextStream, but this way it seems to me that the file is opened again, and the "Close" method does not work either, with the file defined as a TextStream object.
If I close excel, I'm able to delete those files, but that's not the way I want. Since IT'S OPEN IN EXCEL PROCESS, I imagine there's some way to close it.
I run excel 2010 on a windows 8.1 machine. In excel I have email address that I need to mail from however when I click the hyperlink it automatically directs me to Hotmail. Is there a way to change that to automatically load Outlook instead?
I have a macro that will email a link of the worksheet.
the problem is I may have different email addresses to send it to. I want to be able to have an input box come up, and the person to enter in an email address, click ok and have the macro continue to email.
Sub Make_Outlook_Mail_With_File_Link() 'Working in Office 2000-2010 Dim OutApp As Object Dim OutMail As Object Dim StrBody As String If ActiveWorkbook.Path "" Then Set OutApp = CreateObject("Outlook.Application") Set OutMail = OutApp.CreateItem(0)
I have an excel workbook (Excel 2010) consisting on 30 sheets, I would like to add a command button to one (1) of the sheets that would attach just that sheet and not the whole workbook to my Outlook 2010 email, is this possible. What would the code look like.
what is the proper terminology for the Outlook "Thing" that opens up in excel (shown below)? Is it simply a toolbar? Add-in?
Second question, I have a excel file that automatically loads the outlook "Toolbar" each time it is opened.
The file was made in 2010 and password protected and locked, sent to a worker who edited the appropriate fields and saved, and then they sent the file back to me (2003 Format). Now this file automatically loads the outlook toolbar. I am trying to trouble shoot so what would cause this behavior?
I am looking for a macro that will convert the active sheet in an Excel 2010 file to a PDF, attach the PDF to an Outlook 2010 email message, and fill in the subject line and recipient address which are the same each time.
Have an Excel 2010 spreadsheet with 902 email addresses in one column, and 927 email addresses in other column, sorted in alphabetical order.
Overview: Organization database has 902 Members (some have 2 email addresses subscribed to listserv) and Organizational Listserv which has all 927 (Difference is numbers are some members have 2 email addresses subscribed) BUT 902 of emails should be the same
Objective to compare Listserv Members 927 with Database Members 902. I am trying to isolate the email addresses which do NOT exist in Listserv Column, or who do not exist in Database Column for Audit purposes. All Members from the Database column should be subscribed or entered into the Listserv column.
If it's a perfect world the 902 email addresses will all be exactly the same as 902 out of the 927 Listserv email addresses. Trying to highlight or sort and put identical email addresses on same line or using Conditionally formatting? Highlight Cell Rules/Duplicate cell rules Even when same email addresses are on the same row conditional formatting does not recognize them.
Would like to find a formula or macro which would automatically send an email to let me know when a date entered into the specific cell is coming close to expiration. e.g. if the date 01/05/2014 is entered into a cell i would like an email to be sent to me a month before the date is reached (01/04/2014).
I'm trying to create an excel macro that can send emails with an attached file per row of my entry in excel I imagine it would be like the screenshot below. I've tried the code in the link below from a macro tutorial website but wasn't able to make it work due to error DataObject is unkown I'm using excel 2013 and lotus notes 8.5 as my email.