I'm making an Excel Add-in which has a CustomTaskPane. On load I try to set the dockposition, height and width of the custom taskpane. Setting these properties executes almost immediately on Excel2010, but with Excel2013 it takes almost two seconds.
I've seen a question on MSDN about this, but no real answer was given. Are other people having this issue, and is there a workarround?
Yes I do also have this problem. I think this has become an issue since Excel 2013 is now SDI (Single Document Interface), which means each workbook has its own visibility states for the custom taskpanes that were application scoped up to Excel 2010.
A Workaround to increase speed:
It is still slower than Excel 2007 and Excel 2010, but you can disable the new Office 2013 animations in the registry to increase speed a lot, see Disable Excel 2013 cell animation.
Related
I've created an Excel workbook for a client of mine which uses a custom ribbon tab to access the VBA functionality. It thus contains a customUI.xml file with the extra ribbon code in it (by using the Custom UI Editor tool). By now, all was working well for over a year.
However, a few days ago the ribbon customizations keep disappearing after he makes a simple modification to the file and saves it again. Nothing fancy; just change some cell values and ctrl-s save. When opening the saved version the ribbon doesn't show up, and on closer inspection it turns out the ribbon customization is completely gone from the file at that point (the entire root customUI folder is gone and the reference to it from the _rels.rels file is gone too). He's just a regular Excel user, so he doesn't even know about Office custom UI ribbon xmls etc, so it's not that he has been messing with tools he shouldn't have messed with. When I open a working copy of the file on my machine and save it, the ribbon remains in place.
The VBA is still intact though, and the listobject tables that are placed on some sheets are still there too, so it can't be because it got intermediately saved in 2003 format or such...
The file does live in a Sharepoint and OneDrive environment, but IIRC he also had this problem when retrieving a working backup of the file, placing it on his desktop and making a modification from there. Then again a few months ago his IT administrator has moved his company over to Office 356 and migrated his files to the cloud, so it might well be his desktop is on OneDrive too.
What could cause a perfectly fine ribbon to disappear like that? A rogue Office update? Or some Sharepoint 'security' feature to remove ribbons on save? (note that I'm not well known with Sharepoint so this is just wild speculation.) He's using Office 365, so I presume he's on Excel 2019 (as am I).
All leads are welcome, because I'm at a total loss here...
A single machine, Windows 10 & Excel 2013, will no longer correctly display spreadsheets that have Form Control objects. ActiveX objects display correctly.
Form Control combo box
ActiveX combo box
Have removed and reinstalled Office, removed and reinstalled Visual Studio 2010, followed suggestions for FM20.dll and FM20ENU.dll, all to no avail. All updates to Office and Windows 10. Updated video drivers, checked Excel options and settings. No add-ins. No 3rd party Office or Excel tools.
The form can not be changed, easily and since other computers display correctly, don’t want to spend much more time on this. But finding out the root cause would be of great help.
Thank you in advance.
This is a very simple question from me.
I have inserted some user forms in Excel 2013 which have VBA code in them.
Some of the users have a very old version of Excel (such as Microsoft Excel 2003/2006).
I would like to know, will my user forms work in these older versions? I worry because back in 2003, I believe they were not called 'user forms' and therefore some functions may be disabled.
I cannot find a clear answer anywhere so a response here would help a lot.
Userforms were introduced in Excel 5 back last century so there will be no problem there. You are more likely to hit problems with specific functions in the sheets, or with 64bit/32 bit versions. (And the idea that 2003 is a long time ago is cracking me up - we have one in-house program written in VB version 3 in 1993 still running)
One data provider wants to develop an Excel add-in, these are the requirements:
1) it can be installed on desktop. It adds one menu and buttons in Ribbon, and it also provides some specific functions (to get real-time data, like Bloomberg function).
2) the add-in should work in Excel 2007, 2010, 2013 and 2016.
The question is which technology should be used to create this add-in. Here are some of my thoughts:
1) JavaScript API for Excel does not fit, because it does not work for Excel 2007, 2010.
2) VSTO. Does anyone know if VSTO add-ins work for Excel 2013 and 2016?; Is it possible to build one VSTO add-in that works for all Excel 2007, 2010, 2013 and 2016?
3) C API for Excel. It seems that C API for Excel is used to build XLLs. Does anyone know if C API for Excel can build menu and buttons?
Here are some points :
JavaScript API , they are web based addin, so your add-in won't work without internet but it seems that your solution is for a data provider so I assume your clients will have internet. As you said, it didn't work for pre 2013 versions. see here
VSTO, probably the best option but you need to be aware of a major change related to MDI/SDI between Excel 2013 and previous version. Others small tweaks may appear (image idmso, some events..) but VSTO 2007 should be 2016 compatible. VSTO 2016 doesn't exist, the latest release is 2010 (Version 4.0 Runtime). You should test it regularly during development time to check the compatibility.
It is possible to add a menu (a dropdown list) and a toolbar via the Excel C Api (using xlfAddMenu and xlfAddToolbar) but not ribbon controls that require the COM Interface IRibbonExtensibility. So the only way to add controls to the rubbon is via the COM technology (from wich VSTO is based on). The Excel C API didn't change since the 2007 version so it will be fully compatible for all versions. You can find a working example in the Excel C API 2010 SDK (not in the 2013 SDK -this part has been removed), in the file GENERIC.C , see the xlAutoOpen function. Also please note that it is very difficult to find information about it.
From my point of view, you have two possibilities: 1) implement everything via VSTO or 2) to implement your routines via the Excel C API and to interact with it via a VSTO addin that is just used for ribbon controls. I would suggest you the first solution (VSTO), you'll find more documentation about it.
EDIT :
Just realized your question is also about UDF. There are three ways to add UDFs to Excel : via VBA, via a COM automation and via the Excel C API. The best option for UDF is definitively the EXCEL C API but there exist an open source project that "wrap" this API in C#, see Excel DNA.
EDIT 2 :
As an alternative to VSTO, still in Net, there is the NetOffice project on Codeplex that it is worth trying it, they claim that they support all Excel versions. It won't help you regarding the UDFs part but for the GUI it seems to be a good candidate.
This question already has answers here:
Microsoft Excel ActiveX Controls Disabled?
(11 answers)
Closed 8 years ago.
So at work I ran into this issue after I installed the most recent Windows 7 updates (including Microsoft Office 2010 updates) - the date up the update was today (Dec 12, 2014).
After the update, I opened my macro enabled workbook in Excel 2010 and basically anything that referenced ActiveX controls (checkboxes, buttons) no longer worked. My auto_open was checking checkboxes and couldn't run... it kept erroring at the first checkbox check. The buttons are also no longer clickable.
Before you say it, I have checked my trust settings and allowed all ActiveX and Macros, but no change. If anyone has any advice, I'm all ears. Due to me not being an admin, I cannot due too many things as far as Windows goes.
We had this somewhat shocking issue yesterday on several machines with Excel 2007.
By rolling back Security updates for office one by one, we determined that this was being caused by update KB2596927 from 9 December 2014 - Link
After this update, not only did many macro-enabled worksheets break down upon activating macros due to their ActiveX controls being killed, but also no classic ActiveX controls (button, checkbox, etc.) could be inserted into a blank workbook any longer!
CONFIRM AS SOLVED: I can confirm that the answer to delete the file C:\Users\USERNAME\AppData\Local\Temp\Excel8.0\MSForms.exd has worked for me!
Thank you guys!
Here is more information on EXD files
This was resolved also in another post on this forum
Resolved issue !
Close Excel
Rename or delete this file (at your own risk) :
C:\Users\USERNAME\AppData\Local\Temp\Excel8.0\MSForms.exd
It would be rebuild after Excel reopens. My ActiveX et macros are working good !
Have a good day !
Cracki
As a quick fix and workaround use this tool:
http://go.microsoft.com/?linkid=9875022
https://support.microsoft.com/kb/3025036
Basically remove all “.exd” files which represent the cache of the forms.