• VBA7 and common controls

    Author
    Topic
    #469471

    Excerpt from http://msdn.microsoft.com/en-us/library/ee691831.aspx

    Native 64-bit processes in Office 2010 cannot load 32-bit binaries. This includes the common controls of MSComCtl (TabStrip, Toolbar, StatusBar, ProgressBar, TreeView, ListViews, ImageList, Slider, ImageComboBox) and the controls of MSComCt2 (Animation, UpDown, MonthView, DateTimePicker, FlatScrollBar).These controls were installed by previous versions of Microsoft Office and are installed by 32-bit Office 2010. An alternative must be found for existing Microsoft Office VBA solutions that utilize these controls when the code is migrated to 64-bit Office 2010. 64-bit Office 2010 does not provide 64-bit versions of the Common Controls.

    Does anybody knows where or how to find such alternatives???

    Viewing 5 reply threads
    Author
    Replies
    • #1227718

      If any, they should be available through the More Controls… button on the insert control dropdown in the ribbon.

    • #1227732

      J-K, I don’t understand: how can they be in the Ribbon, if Microsoft tells us that Office 2010 doesn’t provide them?

    • #1227920

      If they say to look for alternatives, they mean look for the 64 bit counterparts of the control you need if you’re using Office 64 bit.

      The only place you can look for them is by using the more controls button. That button will make Office go scrambling through your registry to see which controls your system has available to you.

      Note however, that that does not mean other systems with the same Office version will also have these controls. It also means that 32 bit versions of Office will not be able to use your 64 bit version of the controls.

      I’d advise not to use external controls unless you really have to, this avoids a lot of trouble should your file have to be distributed.

      If you want a trouble free file, I usually advise to stick with the form controls. They port best to other versions.

    • #1227924

      j-k, thanks for replying: you clarified the issue. Let’s see if I understood you correctly through a thougt experiment: If I install VB Express 2010 which supports 64 bits and does contain the common controls, then there might be a chance that I can place those controls on an Access 2010 form (with 64 bit support)? – but no guaranty it will work.

      I am in the planning phase and I’m considering if I can move to Office 64 bits. I have no immediate use for it but sooner or later we will be forced to move. So I looked into the problems right now. My Access application is heavily VBA doped but I have no external declarations (Declare API statements). So the only apparent stumbling block seems to be the use of two controls (Progessbar and Listview) on some Access Forms.

      I also understand that the move is an all or nothing one: both 32- and 64-bits Office are not supported together on the same system. Which makes a gradual migration impossible. Fortunately 32 bit Office is supported on a 64 bit Windows. That seems to be the Official Microsoft recommendation: Understanding 64-bit Office

      For these reasons, we recommend running 32-bit Office 2010 even on 64-bit Windows operating systems for better compatibility. On 64-bit Windows, more applications and documents may be opened at once, and switching among them will be faster because the machine can have more physical memory for the processes to share. When the 64-bit ecosystem for Office is more mature, you’ll be able to easily migrate to 64-bit Office!

      But nowhere in that note is a commitment that in the future the Common Controls will be supplied by Office.
      Any thought on a migration path are wellcome.

    • #1228001

      One way to have both versions is by installing one of them inside a virtual machine.

      Your summary seems to be correct.

      The “common” controls however, should already be on your system, as they are part of windows, not of .NET as far as I know. Don’t know what win64 has to offer with that respect.

      • #1228181

        One way to have both versions is by installing one of them inside a virtual machine.

        Which implies two licences??

    • #1228250

      I expect so. Best to read the license agreement.

    Viewing 5 reply threads
    Reply To: VBA7 and common controls

    You can use BBCodes to format your content.
    Your account can't use all available BBCodes, they will be stripped before saving.

    Your information: