Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Different Controls across different excel versions
I have found that I am unable to run some VB code on other PC's because they
do not have the same controls as I have i my version of Excel. I have 2002, others have the latest version yet I seem to have more controls. I am not sure if the new controls come from std windows upgrades, or is something I installed from my office disks or downloaded or ...?? What is the best way to make excel vb applications transportable across different machines? Do you need to package the controls with the code? - dont know if this can be done / how to do it Do you need to install the correct controls on each and every machine? Please help |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Different Controls across different excel versions
AFAIK it is not possible to "bundle controls", this goes for both VBA
(AddIns, workbooks etc.) and even standalone VB executables. When you use something like Visual Studio to create an Installer package for a program it neatly bundles everything together for you in one easily deployable package (although it may not always work very well....). As a point of interest, a language such as Delphi on the other hand normally compiles everything you need into one executable - thus, avoiding these problems although bloating the application file a tad. When developing in Excel I try and use the default controls - rarely changing the references and when I do, go for an earlier version, just to be on the safe side. If you do not have the correct control available on a user's PC you need to install the OCX on the machine using regsvr32.exe. See below link for details: http://groups-beta.google.com/group/...58cc69 154394 I believe you could even use Excel to shell out and install a control for you... but I've never done it. If memory serves me right you need to restart Excel after installing the control - not positive. HTH, Gareth qBall wrote: I have found that I am unable to run some VB code on other PC's because they do not have the same controls as I have i my version of Excel. I have 2002, others have the latest version yet I seem to have more controls. I am not sure if the new controls come from std windows upgrades, or is something I installed from my office disks or downloaded or ...?? What is the best way to make excel vb applications transportable across different machines? Do you need to package the controls with the code? - dont know if this can be done / how to do it Do you need to install the correct controls on each and every machine? Please help |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Different Controls across different excel versions
Thanks Gareth - I thought as much
The control I want to use is a chartspace control - so I cant stick to the basics.... In terms of installing controls (this may be a stupid question) - where do I find the ocx files? do I need to download them or will they stull be on the PC somewhere? "Gareth" wrote: AFAIK it is not possible to "bundle controls", this goes for both VBA (AddIns, workbooks etc.) and even standalone VB executables. When you use something like Visual Studio to create an Installer package for a program it neatly bundles everything together for you in one easily deployable package (although it may not always work very well....). As a point of interest, a language such as Delphi on the other hand normally compiles everything you need into one executable - thus, avoiding these problems although bloating the application file a tad. When developing in Excel I try and use the default controls - rarely changing the references and when I do, go for an earlier version, just to be on the safe side. If you do not have the correct control available on a user's PC you need to install the OCX on the machine using regsvr32.exe. See below link for details: http://groups-beta.google.com/group/...58cc69 154394 I believe you could even use Excel to shell out and install a control for you... but I've never done it. If memory serves me right you need to restart Excel after installing the control - not positive. HTH, Gareth qBall wrote: I have found that I am unable to run some VB code on other PC's because they do not have the same controls as I have i my version of Excel. I have 2002, others have the latest version yet I seem to have more controls. I am not sure if the new controls come from std windows upgrades, or is something I installed from my office disks or downloaded or ...?? What is the best way to make excel vb applications transportable across different machines? Do you need to package the controls with the code? - dont know if this can be done / how to do it Do you need to install the correct controls on each and every machine? Please help |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
Different Controls across different excel versions
Hi,
I'm no expert on this... but from my experience: I assume you accessed this chartspace control either by adding a reference to the workbook (Tools\References when in VBE - in which case it may be a DLL rather than an OCX but it makes no difference to how you'll use it AFAIK) or through rightclicking and adding a new control to the Toolbox. In either of these cases you should be able to see the filename and location (on your machine) just by clicking on the control in the list where you find them, it should be at the bottom of the pane. You can copy the file to the appropriate folder (i.e. the same as yours) on the user's machine (normally - but not always - the system32 folder) and then register it as described below. As a caveat, not all controls may be distributed licence free. You should check whether it requires licensing per user or similar. If it's just "knocking about" on your PC then most likely it doesn't.... but best to check. Cya, Gareth qBall wrote: Thanks Gareth - I thought as much The control I want to use is a chartspace control - so I cant stick to the basics.... In terms of installing controls (this may be a stupid question) - where do I find the ocx files? do I need to download them or will they stull be on the PC somewhere? "Gareth" wrote: AFAIK it is not possible to "bundle controls", this goes for both VBA (AddIns, workbooks etc.) and even standalone VB executables. When you use something like Visual Studio to create an Installer package for a program it neatly bundles everything together for you in one easily deployable package (although it may not always work very well....). As a point of interest, a language such as Delphi on the other hand normally compiles everything you need into one executable - thus, avoiding these problems although bloating the application file a tad. When developing in Excel I try and use the default controls - rarely changing the references and when I do, go for an earlier version, just to be on the safe side. If you do not have the correct control available on a user's PC you need to install the OCX on the machine using regsvr32.exe. See below link for details: http://groups-beta.google.com/group/...58cc69 154394 I believe you could even use Excel to shell out and install a control for you... but I've never done it. If memory serves me right you need to restart Excel after installing the control - not positive. HTH, Gareth qBall wrote: I have found that I am unable to run some VB code on other PC's because they do not have the same controls as I have i my version of Excel. I have 2002, others have the latest version yet I seem to have more controls. I am not sure if the new controls come from std windows upgrades, or is something I installed from my office disks or downloaded or ...?? What is the best way to make excel vb applications transportable across different machines? Do you need to package the controls with the code? - dont know if this can be done / how to do it Do you need to install the correct controls on each and every machine? Please help |
#5
Posted to microsoft.public.excel.programming
|
|||
|
|||
Different Controls across different excel versions
Thanks - that will definately solve my problems!
"Gareth" wrote: Hi, I'm no expert on this... but from my experience: I assume you accessed this chartspace control either by adding a reference to the workbook (Tools\References when in VBE - in which case it may be a DLL rather than an OCX but it makes no difference to how you'll use it AFAIK) or through rightclicking and adding a new control to the Toolbox. In either of these cases you should be able to see the filename and location (on your machine) just by clicking on the control in the list where you find them, it should be at the bottom of the pane. You can copy the file to the appropriate folder (i.e. the same as yours) on the user's machine (normally - but not always - the system32 folder) and then register it as described below. As a caveat, not all controls may be distributed licence free. You should check whether it requires licensing per user or similar. If it's just "knocking about" on your PC then most likely it doesn't.... but best to check. Cya, Gareth qBall wrote: Thanks Gareth - I thought as much The control I want to use is a chartspace control - so I cant stick to the basics.... In terms of installing controls (this may be a stupid question) - where do I find the ocx files? do I need to download them or will they stull be on the PC somewhere? "Gareth" wrote: AFAIK it is not possible to "bundle controls", this goes for both VBA (AddIns, workbooks etc.) and even standalone VB executables. When you use something like Visual Studio to create an Installer package for a program it neatly bundles everything together for you in one easily deployable package (although it may not always work very well....). As a point of interest, a language such as Delphi on the other hand normally compiles everything you need into one executable - thus, avoiding these problems although bloating the application file a tad. When developing in Excel I try and use the default controls - rarely changing the references and when I do, go for an earlier version, just to be on the safe side. If you do not have the correct control available on a user's PC you need to install the OCX on the machine using regsvr32.exe. See below link for details: http://groups-beta.google.com/group/...58cc69 154394 I believe you could even use Excel to shell out and install a control for you... but I've never done it. If memory serves me right you need to restart Excel after installing the control - not positive. HTH, Gareth qBall wrote: I have found that I am unable to run some VB code on other PC's because they do not have the same controls as I have i my version of Excel. I have 2002, others have the latest version yet I seem to have more controls. I am not sure if the new controls come from std windows upgrades, or is something I installed from my office disks or downloaded or ...?? What is the best way to make excel vb applications transportable across different machines? Do you need to package the controls with the code? - dont know if this can be done / how to do it Do you need to install the correct controls on each and every machine? Please help |
#6
Posted to microsoft.public.excel.programming
|
|||
|
|||
Different Controls across different excel versions
You're welcome!
qBall wrote: Thanks - that will definately solve my problems! "Gareth" wrote: Hi, I'm no expert on this... but from my experience: I assume you accessed this chartspace control either by adding a reference to the workbook (Tools\References when in VBE - in which case it may be a DLL rather than an OCX but it makes no difference to how you'll use it AFAIK) or through rightclicking and adding a new control to the Toolbox. In either of these cases you should be able to see the filename and location (on your machine) just by clicking on the control in the list where you find them, it should be at the bottom of the pane. You can copy the file to the appropriate folder (i.e. the same as yours) on the user's machine (normally - but not always - the system32 folder) and then register it as described below. As a caveat, not all controls may be distributed licence free. You should check whether it requires licensing per user or similar. If it's just "knocking about" on your PC then most likely it doesn't.... but best to check. Cya, Gareth qBall wrote: Thanks Gareth - I thought as much The control I want to use is a chartspace control - so I cant stick to the basics.... In terms of installing controls (this may be a stupid question) - where do I find the ocx files? do I need to download them or will they stull be on the PC somewhere? "Gareth" wrote: AFAIK it is not possible to "bundle controls", this goes for both VBA (AddIns, workbooks etc.) and even standalone VB executables. When you use something like Visual Studio to create an Installer package for a program it neatly bundles everything together for you in one easily deployable package (although it may not always work very well....). As a point of interest, a language such as Delphi on the other hand normally compiles everything you need into one executable - thus, avoiding these problems although bloating the application file a tad. When developing in Excel I try and use the default controls - rarely changing the references and when I do, go for an earlier version, just to be on the safe side. If you do not have the correct control available on a user's PC you need to install the OCX on the machine using regsvr32.exe. See below link for details: http://groups-beta.google.com/group/...58cc69 154394 I believe you could even use Excel to shell out and install a control for you... but I've never done it. If memory serves me right you need to restart Excel after installing the control - not positive. HTH, Gareth qBall wrote: I have found that I am unable to run some VB code on other PC's because they do not have the same controls as I have i my version of Excel. I have 2002, others have the latest version yet I seem to have more controls. I am not sure if the new controls come from std windows upgrades, or is something I installed from my office disks or downloaded or ...?? What is the best way to make excel vb applications transportable across different machines? Do you need to package the controls with the code? - dont know if this can be done / how to do it Do you need to install the correct controls on each and every machine? Please help |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
excel versions | Excel Discussion (Misc queries) | |||
ActiveX Controls vs Form Controls | Excel Discussion (Misc queries) | |||
Please include fonts from previous versions ('98) in new versions | Excel Discussion (Misc queries) | |||
Excel Versions | Excel Discussion (Misc queries) | |||
Event procedures for controls added with Controls.Add | Excel Programming |