Re: mathematicalink for excel xp
- To: mathgroup at smc.vnet.net
- Subject: [mg35477] Re: [mg35465] mathematicalink for excel xp
- From: "Matthew D. Langston" <langston at SLAC.Stanford.EDU>
- Date: Tue, 16 Jul 2002 04:49:32 -0400 (EDT)
- Organization: Stanford Linear Accelerator Center
- References: <200207141019.GAA16616@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
I ran into this same problem about the time Microsoft released their "June 19, 2002 Excel 2002 update". I fixed the problem and sent Wolfram a patch for it last week (it is a VBA coding problem in the MLX.xla Excel add-in file). I believe your two choices are to either uninstall Microsoft's June 19 Excel update (although I haven't tried this, so no guarantees), or to use my patch. In my case, I actually needed the fixes in Microsoft's June 19 Excel update, which is why I had to dig into the VBA code and fix it myself. My license for "Mathematica Link for Excel" prohibits me from directly sending you the new MLX.xla file that fixes the problem, but I am permitted to send you a patch file, or to just tell you which lines of the VBA code to manually edit and change. Let me know if you want to go down this route and I'll create such a patch or instruction set for you. Here is the email I send to Wolfram Technical Support last week that describes the problem in detail: Hi Bruce, I fixed the problem with the MLX.xla "Mathematica Link for Excel" Add-In. I edited the VBA code in MLX.xla to work around problems with Excel "Dialog Sheets". I've attached my fixed version of MLX.xla to this email as "MLX_Langston_Patch.xla". Here is a short description of the problem, and my fix, so that Wolfram can pass it along to other users who experience the same problem. The problem is with the way MLX.xla was originally written. The MLX.xla Add-In uses an Excel feature called "Dialog Sheets" which are obsolete and deprecated features of Excel since Excel 97. Microsoft replaced Excel "Dialog Sheets" with "User Forms" beginning with Excel 97, and "User Forms" are the way all current Excel applications are written. The specific problem was that Microsoft removed the "Visible" property from "DialogSheets.DrawingObjects" class. The MLX.xla Add-In used a lot of constructs like this example VBA code: helpgroup = Array("helptext") With ThisWorkbook.DialogSheets("Help Dialog") .DrawingObjects(helpgroup).Visible = False End With My fix was to use the venerable VBA "On Error Resume Next" statement to "fix" the problem. For example, I re-wrote the above example like this: helpgroup = Array("helptext") With ThisWorkbook.DialogSheets("Help Dialog") On Error Resume Next .DrawingObjects(helpgroup).Visible = False On Error Goto 0 End With With Microsoft's "June 19, 2002 Excel 2002 update", it looks like bitrot is slowly creeping its way into Excel DialogSheets. According to my Microsoft developer documentation, it is Microsoft's policy not to fix "deprecated" features so it is unlikely that Microsoft will re-introduce the "Visible" property from "DialogSheets.DrawingObjects" class, but who knows (maybe Wolfram carries a lot of weight with Microsoft). As an Excel developer myself, as well as a Mathematica developer, it doesn't look to me like it would be all that much work to replace the 8 dialog sheets in MLX.xla with User Forms. I hope this helps other users. Regards, Matt ----- Original Message ----- From: <erich.neuwirth at univie.ac.at> To: mathgroup at smc.vnet.net Subject: [mg35477] [mg35465] mathematicalink for excel xp > i am trying to use mathematica link for excel xp on win2k > with mathematica 4.1.2 > > there is an update on wolfram's web site for this software combination, > but i always get an error: > > runtime error 1004 > unable to set visible property of drawingobjects class. > > has anybody experienced the same problem? > is there a solution? > >
- References:
- mathematicalink for excel xp
- From: erich.neuwirth@univie.ac.at
- mathematicalink for excel xp