By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
425,910 Members | 1,036 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 425,910 IT Pros & Developers. It's quick & easy.

"Bad Variable Type", Excel, W2K

P: n/a
Hi,

I have an ASP.NET app that works perfectly in Windows Server 2003, but fails
in Windows 2000.

It fails when trying to read the data in an Excel Workbook (range.value)...
The error is:

COMException (0x80020008): Bad Variable Type

The app works in Windows Server 2003 !!!

Why it fails in Windows 2000... Any idea???

Thanks,
Alfredo
Nov 17 '05 #1
Share this Question
Share on Google+
5 Replies


P: n/a
Hi Alfredo,

Generally speaking, the error happens when you have different versions of
Excel. If you referenced Excel 10.0 (Office XP) type library in windows
2003 server and then use the same program in a machine with Excel 2000, the
error happens. So please make sure that the version of Excel is the same.
If not, please add reference to the right type library in your program.

Hope this helps.

Regards,

HuangTM
Microsoft Online Partner Support
MCSE/MCSD

Get Secure! ¨C www.microsoft.com/security
This posting is provided ˇ°as isˇ± with no warranties and confers no rights.

Nov 17 '05 #2

P: n/a
Excel is same version (XP SP2) in both servers.

Regards,
Alfredo

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Nov 17 '05 #3

P: n/a
Hello Alfredo,

I noticed that you also post this issue to another newsgroup
"microsoft.public.office.developer.vba". One of my colleagues replied there
and I paste it here for your reference. Please let us know if the following
information helps you resolve the problem.

"Alfredo,

I found a case that describes similar symptoms to those you are seeing.
Please check the following:

1) Excel is installed on the Windows 2000 machines. Excel.exe is an
out-of-process server and has to be installed on the machines on which you
wish to automatic. The Excel version must match that refernced in your
program or you will receive interface mismatch errors.
2) Check that the expression you are building to access the range matches
the data type expected. In a previous case

xlSheet.Cells(i + 4, 1).Value = "Test Value" produced the same error
because i was declared as long and is expected to be integer.

If this information doesn't fix your problem, please feel free to post the
following information:

1) A snipet of the failing code
2) OS and Excel versions in the various environments
3) Whetther you are using VB or C#

Thanks,

Jim

Jim Vita
Microsoft Developer Support

This posting is provided "AS IS" with no warranties, and confers no rights."

We are looking forward to your result!

Regards,

HuangTM
Microsoft Online Partner Support
MCSE/MCSD

Get Secure! ¨C www.microsoft.com/security
This posting is provided ˇ°as isˇ± with no warranties and confers no rights.
Nov 17 '05 #4

P: n/a
I changed range access variables from long to integer, and it works now !!!

Anyway, I consider this a very limiting issue and a bug to be corrected, as
it is if I use Windows Server 2003.

Many thanks for your help!!!

Alfredo

"Tian Min Huang" <ti******@online.microsoft.com> wrote in message
news:R2**************@cpmsftngxa06.phx.gbl...
Hello Alfredo,

I noticed that you also post this issue to another newsgroup
"microsoft.public.office.developer.vba". One of my colleagues replied there and I paste it here for your reference. Please let us know if the following information helps you resolve the problem.

"Alfredo,

I found a case that describes similar symptoms to those you are seeing.
Please check the following:

1) Excel is installed on the Windows 2000 machines. Excel.exe is an
out-of-process server and has to be installed on the machines on which you
wish to automatic. The Excel version must match that refernced in your
program or you will receive interface mismatch errors.
2) Check that the expression you are building to access the range matches
the data type expected. In a previous case

xlSheet.Cells(i + 4, 1).Value = "Test Value" produced the same error
because i was declared as long and is expected to be integer.

If this information doesn't fix your problem, please feel free to post the
following information:

1) A snipet of the failing code
2) OS and Excel versions in the various environments
3) Whetther you are using VB or C#

Thanks,

Jim

Jim Vita
Microsoft Developer Support

This posting is provided "AS IS" with no warranties, and confers no rights."
We are looking forward to your result!

Regards,

HuangTM
Microsoft Online Partner Support
MCSE/MCSD

Get Secure! ¨C www.microsoft.com/security
This posting is provided ˇ°as isˇ± with no warranties and confers no rights.

Nov 17 '05 #5

P: n/a
Hello Alfredo,

Thanks a lot for your update. I am very glad to hear that it works. In
addition, I believe the following KB article is very helpful:

INFO: Considerations for Server-Side Automation of Office
http://support.microsoft.com/?id=257757

Have a nice day!

Regards,

HuangTM
Microsoft Online Partner Support
MCSE/MCSD

Get Secure! ¨C www.microsoft.com/security
This posting is provided ˇ°as isˇ± with no warranties and confers no rights.
Nov 17 '05 #6

This discussion thread is closed

Replies have been disabled for this discussion.