none
Does anyone know of a solution for the lack of Microsoft Date and Time picker (Calander control) for Office 2010 64 bit VBA Projects?

    Question

  • Hi All,

    I have seen various solutions in order to register MSCAL.OCX under Windows 7 (either 32 or 64 bit), but these run under the assumption you are still using Office 32 bit. Does anyone know of a solution for Office 64 bit VBA Projects?

    I'm a little confused as to why this control hasn't been developed for the new version of Office. It would appear to me to be a pretty useful and conman control in the creation of custom coded spreadsheets.


    Chris
    • Edited by Swinster Monday, November 07, 2011 5:52 PM
    Monday, November 07, 2011 5:48 PM

Answers

  • I know some third-party that offer ActiveX controls for x64 applications. So the answer is yes it's possible. However, the issue is two-folded; You cannot use these controls in VBA because they are not thread-safe (if I recall it correctly) and since VBA does not compile the solutions You cannot distribute the controls as it will than violate the license rules.

    In view of this I find it remarkable that You get an answer to use VSTO and VS.NET. Yes, You can create excellent solutions if You like and also reliable and targeting 32-bit and 64-bit. But for the average unofficially VBA-developer this path is not an option.

    So I fully agree with You that Microsoft should at least provide some basic ActiveX controls for x64 applications.


    Kind regards, Dennis (http://xldennis.wordpress.com/)
    Sunday, November 13, 2011 4:13 PM

All replies

  • Hi Chris,

    Thanks for your post.

    The first thing you should know is that the MSCAL.OCX controls are replaced by MSCOMCT2.OCX controls, you should consider using the new one as we can guarantee the old one will be supported in further release.

    As for your question, you should be aware of that both MACAL.OCX and MSCOMCT2.OCX are a set of 32-bit controls. 32-bit controls can be installed in 64-bit OS, however, can't work with 64-bit applications. You might need to look for a workaround for the solution you have now. Using VSTO is a good approach to add a set of WinForm controls in document surface:

    Please check this document:

    http://msdn.microsoft.com/en-us/library/b86d6w07.aspx

    I hope this helps


    Best Regards, Calvin Gao [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    • Marked as answer by Calvin_GaoModerator Friday, November 25, 2011 9:24 AM
    • Unmarked as answer by Swinster Friday, November 25, 2011 2:54 PM
    Wednesday, November 09, 2011 9:28 AM
    Moderator
  • Hi Chris,

    Thanks for your post.

    The first thing you should know is that the MSCAL.OCX controls are replaced by MSCOMCT2.OCX controls, you should consider using the new one as we can guarantee the old one will be supported in further release.

    OK, starts off well. This should be no problem.

     

    As for your question, you should be aware of that both MACAL.OCX and MSCOMCT2.OCX are a set of 32-bit controls. 32-bit controls can be installed in 64-bit OS, however, can't work with 64-bit applications.

    Oh Dear. Not quite what I would have expected. I can't quite believe that MS have released their flagship application packages as 64 bit versions without updating the controls that people use and require on a regular basis.

     

    You might need to look for a workaround for the solution you have now. Using VSTO is a good approach to add a set of WinForm controls in document surface:

     

    Please check this document:

    http://msdn.microsoft.com/en-us/library/b86d6w07.aspx

    I hope this helps

    I will look over this, but I wish MS would listen here. Whilst I understand that this is essentially the first release of their 64 bit application packages, the 64 bit OS has been around for MANY years. There are still a lot of things missing on the 64 bit side of things.

     


    Chris
    • Edited by Swinster Wednesday, November 09, 2011 10:32 AM
    Wednesday, November 09, 2011 10:31 AM
  • You might need to look for a workaround for the solution you have now. Using VSTO is a good approach to add a set of WinForm controls in document surface:

    Please check this document:

    http://msdn.microsoft.com/en-us/library/b86d6w07.aspx

    I hope this helps

    Well I checked it out, but this doesn't directly help me as yet. From what I can see the Office Developer Tools are only available in full versions of Visual Studio, which I don't own. I don't do enough development or have enough understanding to take advantage of, or justify the cost of, these environments.

    I assume that if I did I would have to build and entirely new Date Picker/Calendar from the ground up, and replicate the way the with the control MSCAL or MSCOMCT2 work?


    Chris
    Wednesday, November 09, 2011 1:18 PM
  • Come on MS sort this out.....


    Chris
    Friday, November 11, 2011 6:57 PM
  • I know some third-party that offer ActiveX controls for x64 applications. So the answer is yes it's possible. However, the issue is two-folded; You cannot use these controls in VBA because they are not thread-safe (if I recall it correctly) and since VBA does not compile the solutions You cannot distribute the controls as it will than violate the license rules.

    In view of this I find it remarkable that You get an answer to use VSTO and VS.NET. Yes, You can create excellent solutions if You like and also reliable and targeting 32-bit and 64-bit. But for the average unofficially VBA-developer this path is not an option.

    So I fully agree with You that Microsoft should at least provide some basic ActiveX controls for x64 applications.


    Kind regards, Dennis (http://xldennis.wordpress.com/)
    Sunday, November 13, 2011 4:13 PM
  • Hi Calvin,

    I unmarked you reply as an answer because I don't believe the comments made although helpful, actually answer the crux of the question.

    Thank

     

     


    Chris
    Friday, November 25, 2011 2:59 PM
  • I made my own calendar control as a VBA form.  I found I could not use MSCAL.ocx for my 64 bit clients.  You are welcome to give it a try. 

    I posted it at my web site at www.ssitools.com.  Go to Software Tools, Free Downloads.

    Gary Arnold

    Structured Solutions Inc.

    480 650-1605

    Saturday, December 17, 2011 3:09 AM