我在WINXP SP2 +VB6.0 SP6 + EXCEL2003的环境下开发的程序打包后在WINXP SP2 +EXCEL2000的环境下能安装成功,但在把数据导出到excel时说程序出错???
在WINXP SP2 +EXCEL2003下运行准确开发的时候引用的是EXCEL 11.0??请问问题在哪里??该怎么解决???谢谢!!

解决方案 »

  1.   

    问题出在Excel的引用上,Excel 2003引用的是Excel 11.0, 而Excel 2000应该引用 Exel10.0
      

  2.   

    你应该在低版本的Excel的机器上打包,然后可以到高版本的机器上用,但是反过来就会有问题
      

  3.   

    不过打包的时候把Excel带上也应该能解决问题
      

  4.   

    两种方法,一个是在运行的机子上安装excel2003,另一个是打包时带上引用的文件,在引用中能看到这个文件的路径的
      

  5.   

    如果在程序中没有用withevents事件调用,就不要引用,用createobject生成EXCEL对象,如果没有用到高版本的新功能,所有版本都适用了.
      

  6.   

    感谢  hhjjhjhj(大头)(想变胡萝卜^^)  但现在又有一个问题了,就是不能划线,以前可以的啊
        Xlsheet(1).Range("A10:E" & i + 10).Select
        With Selection
            .Borders(xlEdgeLeft).Weight = xlThin
            .Borders(xlEdgeTop).Weight = xlThin
            .Borders(xlEdgeBottom).Weight = xlThin
            .Borders(xlEdgeRight).Weight = xlThin
        End With
    和    Xlsheet(1).Cells(i + 10, j).Borders(xlLeft).Weight = xlThin
        Xlsheet(1).Cells(i + 10, j).Borders(xlRight).Weight = xlThin
        Xlsheet(1).Cells(i + 10, j).Borders(xlBottom).Weight = xlThin两种方式都不能,不知道有没有什么解决的办法??
    谢谢
      

  7.   

    呵呵,用createobject时,常量不会被识别了,xlThin,xlRight等等,查出它们的具体数值,用数值代替之.
      

  8.   

    补充:规范的做法是重新Const xlThin = 2
      

  9.   

    那xlright,xltop等一般怎么定义啊
      

  10.   

    ////那xlright,xltop等一般怎么定义啊
    --------为了找那些数据,可先引用EXCEL,对象浏览器中可以查到,要用到的都Const一下.生成EXE前把引用去了.