Since few days I have tried to apply this ActiveX to my Excel 2013.
I made small app for running reports in Excel and I need some way to pick start and end date.
Easiest way to do it was Date And Time Picker Control which is in %windir%\syswow64\mscomct2.ocx.
It worked perfectly at Windows 7 64-bit + Excel 2010 32-bit.
When I moved my project to other PC with Windows 7 64-bit and Office 2013 32-bit it stopped working. Firstly there was class missing, so I registered Microsoft Windows Common Controls 2 6.0 (SP3) in syswow64 using regsvr32.exe command.
It did not help - it was keep saying "cannot insert object".
Tried another versions of Common Controls (currently SP6), but problem is still there - I can`t put any control to my Excel worksheet.
I`m running out of ideas and tutorials, so maybe some of You had ran into this type of problem and have solution?
It's best that you just abandon your search for a Microsoft solution. They haven't updated the common controls for 64-bit. Your best options are to create your own ActiveX Control by wrapping the Date And Time Picker Control from .Net or communicate using COM and expose the features that you want, or use one of the custom VBA solutions that can be found on Ron de Bruin's Calendar/Date Picker page.
I've used this one - Calendar Control for All Office versions - including Office 2010 64 bit
but this one looks better IMO - A Pop-up Calendar for Excel 2007 and up
Even if you can get it running on your machine, if you work at a large company, like myself, you'll never get IT to deploy the fix to everyone.
Edit: was getting confused with MSCOMCTL.OCX issues
Related
I have a Windows 10 PC running Office 64Bit. When I try to print a DYMO Barcode label, it fails. But works fine on 32Bit Office. I'm programming in MSAccess using VBA.
I reach out to DYMO and they said:
"We have different version of SDK, DLS SDK is out dated and DYMO is not supporting DLS SDK anymore."
I am only a VBA level programmer and not sure what steps to take next.
Maybe someone has run into this before?
The code fails on line 10 below. "429 ActiveX component can't create object"
Dim DymoAddIn As Object
Din DymoLabels As object
10 Set DymoAddIn = CreateObject("Dymo.DymoAddIn")
20 Set DymoLabels = CreateObject("Dymo.DymoLabels")
Well, I figured it out(with no help from DYMO). There is a newer version of the COM object which gets installed using this link.
http://labelwriter.com/software/dls/win/DLS8Setup.8.6.1.648.exe
BUT WARNING! The file is not on a secure server (HTTPS:\). I am not sure why and have asked DMO for a explanation. So, if anyone comes across this situation, just be aware of this.
I created a program in Visual Studio 2017 using VB.net, which takes form data and creates a Word document with an Excel graph. I am running Win 10 and Office 2016. I have successfully run the program on Windows 7 - 10 (32 or 64) on both Office 2013 and Office 2016. However, I need the program to run on a Win 10, Office 2010 machine. Any version of Windows with Office 2010 simply says the program/app has stopped running.
Per what I have found on this site and other sites, it appears that such a program can run on Office 2010 with a certain .NET version and Visual Studio 2010 Tools for Office Runtime installed. Here is the link:
https://msdn.microsoft.com/en-us/library/bb772080.aspx
I have tried installing these on multiple systems, but it seems to make no difference in the result. I used the Event Viewer to see what was going on, and it looked like there was some security setting preventing the program from operating with Word and Excel, but when I changed the security settings in those two programs per advice received elsewhere, I still got the same result.
My searching leads me to believe there is a solution, and a simple one at that, but it has eluded me. Thanks in advance for advice.
My code worked fine on computers with Office 2013 or 2016, but some changes made from 2010 to 2013 lead some of my code to be invalid when trying to operate on computers running Office 2010. The Word code was fine, but the Excel code had three issues. Here is what they were and how I fixed them:
Office 2010 and before do not allow Excel data label width modifications, so I compensated by increasing the overall width of the chart.
The method FullSeriesCollection for my Excel Series was not valid for Office 2010, so I used the method SeriesCollection instead.
I had to put my variable for the Excel chart range above my variable for the Excel chart. I'm not sure exactly why this was needed, because it worked fine in Office 2013 & 2016.
I have created a working Powerpoint add-in (.ppam) that offers several time saving features, and added a custom UI ribbon tab to improve accessibility.
As I look to distribute this add-in to users, I'm looking to improve code security by compiling it into a COM add-in (.dll) via VS Express.
I have looked all over the web for documentation on this, and have found some promising source, such as:
http://www.cpearson.com/excel/creatingcomaddin.aspx
Unfortunately, nearly everything I find appear to be quite outdated and based on Office XP or 2003, when I'm looking at Office 2010. I'm probably doing something wrong here, but I'm having trouble replicating their instructions on my end, running into errors like being unable to add a reference library or the code they suggest is not recognized. I actually am even unsure how to open for example the sample VB project that the Pearson site provides from the link above to imitate. I think all this may be because of the different versions of Office and Visual Studio, but could certainly be wrong.
Could anyone point me in the right direction? My understanding is that it's actually quite simple to convert the code from VBA to VB (just involves adding "Powerpoint.Application." in front of things like "activewindow"). So I just need to figure out how to convert a very simple VBA add-in into a COM add-in in VS Exp 2012 for Office 2010, and then can leverage the process to convert the full add-in.
Apologies if I'm using any of the terms incorrectly.
I am using VBA for Excel. My requirement is that the forms created in VBA shall communicate with external system over serial port of my system. For the same purpose, like we do in VB, I am tring to add MS Comm Control in VBA.
I am able to add MS Comm Control to control panel by selecting the same from Tools -> Additional Controls. However, when I try to place MSComm control on my form, it gives me following error.
The subject is not trusted for specified action.
Due to this, I am not able to place the control on my form and hence not able to use the same.
The same behaviour is observed for MS Winsock Control.
Found a similar question on stackoverflow: MSCOMM32.ocx usage causes Not Trusted Error without any concrete answer.
My installations are:
Win XP - SP3, MS Office 2010, VB6, MS VS 2010.
Legal use of VB6 controls in an Excel macro (or in any 3rd party program or programming language) is restricted. The only exceptions are when you have licensed Office Developer Edition (or in newer versions of Office the extra developer package that contains VSTO or equivalent) or if you are just creating them for use on the same machine that has VB6 installed.
But your problem is probably either related to Microsoft kill-bitting the OCX (which prevents use in IE, and maybe in Office?), or more likely that you are using 64-bit Excel (and thus 64-bit VBA).
I got similar problem but with MsWinSck.OCX. I fixed it by loading ActiveX Compatibility Manager from http://www.nirsoft.net/utils/acm.html and enable the OCX (Winsck.OCX) by selecting the OCX in the lines then click the green LED on the menu.
Hope this may help.
I have a working excel workbook that has VBA code and macros to help in data input.
I use a calendar to capture dates and read data out of cells. The application works 100% on my machine (application developed in 2007 but saved as a .XLS – 97/2000 for compatibility in the office).
When I give the file to other people, the calendar control and the TRIM() function do not work.
On my machine I can get to the references section but on all other machines in the office the references function is grayed out. Any idea why a common object like the calendar and a common function like trim() do not work on some machines
Are the references greyed-out in a new workbook on the other PCs? References are usually only greyed-out when code is running. The calendar control was (is?) notorious for not running on the various different releases, so various work-arounds have been developed, such as Allen Browne's calendar pop-up. Trim is part of Visual Basic for Applications and you will probably find that the function is fixed once you get rid of the missing Calendar control reference.
The calendar control has many different versions, you need to build it out of the version they have on their machine.
VBA will automatically update references to the newest version. Example: If I reference Office 10.0 and you have Office 12.0 on your machine the reference will automatically be updated from ten to twelve. But it does not downgrade them. So if you have a reference to Office 12.0 and deploy it on a machine that only has Office 10.0 then you code will break.
There are two ways around this. If you want to stay with early binding then you will need to obtain a copy of the oldest version of the library in use. Then reference that file.
The usual alternative would be to go to late binding. However this can be little more challenging with embedded controls.