你那台机子上安装的肯定不是EXCEL2000!这就是原因所在!
    

解决方案 »

  1.   


      那台就是出问题的那台!要知道,微软的东西都会七引八引关联很多库的,尤其是涉及到系统的部分,你能肯定你把需要的都打包了吗?所以解决的方法很简单,在那台出问题的机子上安装excel2000.
      

  2.   

    打包时已经包含进去了。
    会不会excel2000也有几个版本?!
    另外,由于excel90是一个olb文件,会不会是安装后仍然没有注册?
    如何让olb文件自动注册?
      

  3.   

          “打包时已经包含进去了”,你的意思是把excel2000的安装也包含进去了么?如果是,我无话可说。    不过看你的回答应该是没有,否则你不会问“excel90是一个olb文件,会不会是安装后仍然没有注册”。其实这就是关键,要知道excel2000并不是简单的把一两个文件拷贝!!
    它涉及到很多系统的、有关数据的部件的更新。看看excel2000的标准的安装程序的大小你就知道了,如果简单的像你想得只要拷几个文件,能会有那么大的安装包么?
      

  4.   

    我用vb自带的打包程序以及installshield的vb工程向导均只是包含了excel90.olb,
    这个程序是给别人用的,我总不能把excel安装都打上。而且对方确实安装了excel2000,
    因为:
    如果在没有安装excel2000的机子上运行,出错信息是:不能创建对象(err:429)
    而在该机子上的错误信息是:变量使用了Visual Basic不支持的类型(错误458)
    不知是不是由于excel版本的问题,虽然都是excel2000,会不会版本还是可能不同?另外,我用vb打包程序做了安装程序,然后到一台没有安装过excel2000的机子上安装,
    结果错误信息还是:429。好像excel对象库没有安上。
    我想如果安装程序做对了,应该到哪都可以运行。我该怎么办呢?!
      

  5.   


       这样的话,建议你安装微软免费提供的:MDAC_TYP.EXE,在微软的网站上有。
      

  6.   

    没有,因为excel2000根本没有注册到系统中。
    但我没有在开发的机器上装。
    是不是应该这样:
    1 开发的机器上装mdac
    2 打包
    3 安装的机器上装mdac
    4 安装程序
    这样可以吗(待我试试)?
      

  7.   

    试了,问题还是老样子。
    看来问题就出在:安装完成后电脑上还是没有注册上exceel90的对象库,
    我该怎么办?
      

  8.   

    hehe,如果对方的计算机也有Excel2000,你根本不需要把Excel打包。直接安装即可。
    Excel对象非常复杂,完全打包是极为困难的的。
      

  9.   

    对方机器确实安装有excel2000,我把对方机器上的excel文件拿到我的机器上,
    都能打开,但对方机器运行我的程序就会出错:
    “变量使用了Visual Basic不支持的类型(错误458)”,并且肯定是程序读
    excel文件时出错。
    如果没有装excel,错误信息应该是:
    不能创建对象(错误429)
      

  10.   

    我想与机器无关,我的程序是给人用的,人家在那边试了几台机器结果都一样,但装的都是
    相同的一个office2000。我想可能与版本有关,只是不知如何解决。
      

  11.   


      根据错误提示,我们并不能断定就一定是OFFICE版本不一致导致错误,很有可能是其它部件出现错误(版本不一致),所以我说,你在出问题的那台机子上装上VB,然后运行原程序,看看到底是那一步出问题,这样才有可能最终解决问题.
      

  12.   

    我正想办法这样做,条件有限,我的程序是通过email发给人家的。
    难道没别的办法吗?
      

  13.   


       你可以给他一个“调试板”么:你可以在程序中每个SUB和函数的开始、中间、结尾设置一个MSGBOX,来报告运行的位置,这样可以找到出错的地方,越多的MSGBOX找的越准,然后根据他的运行结果,再看看代码有没有问题。   我想只能这样拉
    。。
      

  14.   

    是不是和你的工程文件的日期有关,把工程文件重新建立一遍再编译。我的dbgrid控件曾经出过这种现象。99年的源程序,上个月想做些修改,编译时就报错,控件未注册。结果重新建立了一遍工程文件,就好了。我想也许对你的问题有些可供参考之处。
      

  15.   

    我得程序是刚做的,用得是vb6。而且在很多机器上都没问题,到人家那边也是所有的机器
    出现同样的问题。
    (我这边所有的机器装的是一张光盘上的office2000,对方所有的机器也是装他们自己的
    一张office2000光盘)
      

  16.   


      to microyzy(毛毛叉) :你怎么还在问这个问题?我都说过了,光凭一个“错误458”这样的提示,你怎么就能一口咬定是EXCEL库的问题??