Invalid procedure call or argument

Posted on 2016-10-11
Last Modified: 2016-10-17

I have downloaded an 'EXCEL' worksheet from a government tax website. I have to fill out some details in this sheet ( .Xlsm )
This sheet has a 'BUTTON' called " Generate XML " 
When i choose this option, it asks me to choose the file name and location. When i choose OK, it comes up with an error.
" Invalid procedure call or argument ".
How do i fix this error and generate an XML file?
This is a protected worksheet and does not allow me to edit the "macros" or choose " file - save as - XML "
I use Excel 2007
Please help
Question by:Michael Sachin
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
LVL 26

Expert Comment

ID: 41838133
different to find the issue, without seeing to code or the file.

Author Comment

by:Michael Sachin
ID: 41838229
I have attached the actual Excel file for your reference. The previous post also has an image file with the error.
I hope you can work on this

Thanks for your help,
LVL 26

Assisted Solution

ProfessorJimJam earned 500 total points
ID: 41838619
@Michael Sachin

i have examined the file, i have repeated what you did, added some data and then click Generate XML and then it asked for folder selection and it successfully created XML file.

the reason you face that error is that you use Excel 2007 and the VBA code that generate XML is using a method called "Early Binding" which requires the object reference in VBA reference library.
the current XML library selected in the file is XML 6 while the one in Excel 2007 is the lower version.
unfortunately, you cannot change that because the VBA is password protected; and breaking the password is easy, however, it is not ok to do so, becuase the author of workbook must have locked it for a reason.

this is one of the mistakes that VBA developers do all the time, using early binding that creates problem with next versions of software and that is why it is preferred to use Late binding method when VBA developers write the code that uses object libraries.

this issue is fixable, but since we do not have the VBA project password, i think it is best to approach the author of the workbook and ask to fix this.

or if author is willing to share with you the unlocked version, then simply Open VBE by pressing ALT + F11 then go to Tools > References then untick the MISSING item and scroll down and select the XML version which is available in your library list. could be version 5 . click save and then it will work.
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Author Comment

by:Michael Sachin
ID: 41839501
Thank you for your effort. I tried the above mentioned options but no go.
I have attached the unprotected worksheet for your reference. Please look into this and
see if you are able to get it to work. I hope you can. I have been trying to work around this for the past
5 days and unable to.


Accepted Solution

Michael Sachin earned 0 total points
ID: 41839794

I downloaded the previous version of the excel file (V1.0) and it worked fine. I think the issue was that I had used the file that was meant for the mac OS. Attached a screenshot that suggests that.

Issue resolved.

Thanks for your help

LVL 26

Expert Comment

ID: 41841674
you are welcome.

i am glad i was able to help.

Author Closing Comment

by:Michael Sachin
ID: 41846343
Downloaded file was for the mac OS. Had to download a different file for Windows. Thanks.

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

This code takes an Excel list of URL’s and adds a header titled “URL List”. It then searches through all URL’s in column “A”, looking for duplicates. When a duplicate is found, it is moved to the top of the list. The duplicate URL’s are then highlig…
You need to know the location of the Office templates folder, so that when you create new templates, they are saved to that location, and thus are available for selection when creating new documents.  The steps to find the Templates folder path are …
The viewer will learn how to use the =DISCRINV command to create a discrete random variable, use this command to model a set of probabilities and outcomes in a Monte Carlo simulation, and learn how to find the standard deviation of a set of probabil…
This Micro Tutorial demonstrate the bugs in Microsoft Excel for Mac with Pivot Charts.

687 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