Activex Excel For Mac

0 views
Skip to first unread message

Gaetan Horton

unread,
Aug 5, 2024, 6:02:34 AM8/5/24
to dismidemi
Ihave an excel workbook with macros that uses ActiveX checkboxes and dropdowns. I've had a few colleagues mention a strange "glitch" is happening with these workbooks. They have 2 devices, one "big" screen computer and one laptop. When they use the workbook on their laptop, the ActiveX controls all work perfectly fine however, when they try to transfer it to their bigger screen and use it there, ONLY the checkboxes aren't working while the dropdowns all work for them. They can't select or deselect with the checkboxes. No error message pops up, no "enable content" message either. Just unresponsive. Would anyone know what could be causing this issue?

I do not have an answer for you, but you have solved a problem I have been having. As recently as June, I have been able to open a file with ActiveX buttons and they all worked correctly. As of this week when I tried to use the program, none of the buttons would do anything when I tried to click on them.


Yesterday I was working in my kitchen and tried again, on my laptop, and they worked! I just tried again today in my office that has two external monitors, and nothing. I searched for an answer, saw your dilemma, and poof! I can now use the ActiveX controls, but only if the file is on my laptop and not on my external screens.


I program a fairly complex excel application that does a ton of event handling and uses a lot of controls. Over the months, I have been trying to deal with a variety of bugs dealing with those combo boxes. I can't recall all the details of each instance now, but these bugs tend to involve pointing the listfillrange and linkedcell properties at named ranges, and often have to do with the combo box events triggering at inappropriate times (such as when application.enableevents = false). These problems seemed to grow bigger in Excel 2007, so that I had to give up on these combo boxes entirely (I now use combo boxes contained in user forms, rather than directly on the sheets).


At this point, I am fairly convinced that ActiveX comboboxes are evil incarnate and not worth the trouble. I have switched to including these comboboxes inside a userform module instead. I would rather inconvenience users with popup forms than random visual artifacts and crashing (with data loss).


I don't have a definitive answer for you, but I can tell you that I stopped using ListFillRange and LinkedCell for ActiveX controls about 10 years ago. I don't recall what particular problems I encountered. I just remember coming to the conclusion that whatever little time they saved me isn't worth the brain ache of trying to track down the bugs. So now I populate the controls through code and deal with output in the events.


My active-x combo box works fine when my Dell is docked but resizes to a larger font each time it is clicked when the Dell is undocked - very strange. I added resizing code which works when undocked, but both .height and .scaleheight fail when docked and when triggered programmatically (even stranger).


Our company has recently upgraded to new (and much larger!) monitors, and I can at last use textboxes, labels and combo boxes in worksheets. Our old Samsung screens displayed text controls correctly, but any manual or VBA-driven updates resulted in an illegible jumble of overlapping characters.


In-Cell dropdowns from Data Validation lists don't have the problem. If you set up a validation list for a cell, then set the data validation error messages to empty strings, you can enter free-form text in the cell; the drop-down list is advisory, not a mandatory limit-to-list.


...And that's everything I know about the font rendering problem. If Mike (with his Dell laptop) is reading this: Good luck with those workarounds - to the best of my knowledge, there's no real 'fix'.


The stability problem was a major headache for me until Excel 2003 came out: using any Active-X control in the sheet was a source of instability. The Jury's still out on Listbox controls embedded in a sheet, even in Excel 2003: I still avoid using them.


So I was facing the same issues. I had a file with drop down lists on which I had superimposed the combobox to fight the issue of illegibility when zooming out too much. This was what my code looked like INITIALLY:


I was facing all sorts of issues but as primarily mentioned on this thread, the LinkedCell issue was the biggest. My selection from the drop down menu would go wherever on the sheet I had clicked last, instead of the cell I had chosen the drop down box from, and in process, also disturbing the code of wherever the selection would go. I used a simple ONE LINE code to make sure my program in ActiveX runs only when its a drop down menu. I used this before the LinkedCell command ran:


during my intership i have a project where i have to add some data to an excel file which already exist, i have to use activex but no idea how to use it, is there some vi available where i can give a file and the coordinates of cells where to writte


thanks a lot, but it still doesn't work but i think it is an individual error (it will probably work on other computers), when i run an error occur , and when i open the excel file after it didn't change as expected and it is suddenly only lecture mode available


After my work computer has been upgraded to Office 365 I have noticed that my ActiveX controls on one of my Excel files are not operational. VBA code behind them do work manually, also form buttons run VBA as well w/o any issues but ActiveX controls stopped responding. Is there a known issue in relation to Office 365 upgrade in regards to the functionality of ActiveX objects? I have seen some recommendations on getting into the registry to fix that issue but since it is a work laptop I wouldn't have the authority to do so and I wouldn't mess with the registry anyways even on my personal PC. What would be the recommended action to resolve this problem?


There have historically been many issues with upgrades affecting activex (one reason they are best avoided) but I've never heard of it affecting individual files. The usual remedy is to close all office applications, then search for, and delete, any .exd files on your hard drive. (these are temp files created when activex controls are used)


Confirmed - Excel8.0 folder in Temp files location is the only folder with two exd files, I close Excel delete tehm and after I open Excel with unfunctional ActievX controls it puts those same exd files back of course. There is another Microsoft folder in the same temp location with only Teams related log files and bak file in it, there is no separate Office folder in that area.


Jan - I have considered that option as well but have been trying to see if I can get away w/o doing that and hoping to get the issue fixed. At this point after trying several other options and some options that were recommended here are not accessible to me on my work machine due to admin limitations, I believe I will be going with recreation of those buttons. I certainly will not use the ActiveX buttons when I recreate and will replace them with the form buttons. I tried to re-create ActiveX buttons anyways and placed the same code within them to no avail. So I am going to assign the form buttons to my macros that are part of the code currently under ActiveX buttons. Again before the upgrade to Microsoft 365 I was using the Office version 2016 w/o any issues as far as Active X button functionality but right after the upgrade to 365 they all stopped working.


I have a .xlsm file that has ActiveX control button with a module macro assigned to it. Problem is I can't click the ActiveX button from my Excel 2010 Standard. I tried to repair and reinstall Excel but that did not fix it. Tried adding a new ActiveX control to the worksheet but got "Cannot insert object" message. Any idea what's is going on?


UPDATE:I checked as many of the security settings as I could based off Google searches, but that didn't seem to work. The icon of the excel file does have a ! sign on orange background though.


SOLUTION:Uninstallting latest Microsoft Office updates solved the issue. I was uninstallting Office updates 1 by 1 until I uninstalled a big one - Service Pack 2 for Office. After a required restart the ActiveX button started to work. Thank you, ajs.


The KB article lists known issues with this Security Update including the Cannot Insert Object error message when attempting to interact with a Forms ActiveX control in an Office document. A resolution for the issue is described in KB3025036.


The ActiveX API wraps the C#/.NET API and is provided as an open source project TWSLib. ActiveX is a legacy technology developed by Microsoft, it essentially allows applications to share information with each other. The current ActiveX API for Excel wraps the C#/.NET API and is provided as an open source project TWSLib. It is suggested to also consider using the C# API directly as it provides seamless integration with the .NET framework.


One possible advantage of using the ActiveX for Excel API as compared to RTDServer or DDE is that ActiveX does provide the same number of functions as the other socket-based technologies (C#, Java, C++, Python). Disadvantages of the ActiveX Excel API is that it is more difficult to program as compared to other Excel APIs and not as robust as non-Excel socket-based API applications.


Clients who may have installed the API into a unique location may receive an #NA message in each ActiveX cell. While this is often indicative of a reference error, the #NA reference may be failing to call an installed DLL essential for the connection with Trader Workstation. To resolve this error, please follow the steps listed below:


In order to use the TWS API, all customers must install either Trader Workstation or IB Gateway to connect the API to. Both downloads maintain the same level of usage and support; however, they both have equal benefits. For example, IB Gateway will be less resource intensive as there is no UI; however, the Trader Workstation has access all of the same information as the API, if users would like an interface to confirm data.

3a8082e126
Reply all
Reply to author
Forward
0 new messages