我開始裝的Excel 2000,後來重裝了Excel2003,下面的語句就出錯。       
     Excel.Workbook ExcelBook = ExcelApp.Workbooks.Open(Path, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue);
錯誤:沒有多載15個參數!有沒有什麼辦法使其在不同的Excel版本間能通用?謝謝!

解决方案 »

  1.   

    判断版本 Applicaiton.version  吧  我没用过2000 不知道啊
      

  2.   

    不知道你想做什么操作?
    如果是数据导出可以用OleDB
      

  3.   

    Open()
    SaveAs()
    都會有錯的!
      

  4.   

    不能通用的.
    现在excel有2000,2003,2007
    判断机器上的excel版本,再决定调用哪一个方法?
      

  5.   

    就用Excel2003的参数个数就行了,你在工程中导入的是Excel2003的dll,只要server安装的Excel2003就不会出错
      

  6.   

    判断版本 Applicaiton.version  吧  判断版本 Applicaiton.version  吧  
    判断版本 Applicaiton.version  吧 
    判断版本 Applicaiton.version  吧  
    10.0 2000 
    11.0 2003
    12.0 2007
      

  7.   

    遇到过这样的错误,你可以把Interop.Excel.dll
    放入你的Bin中,引用到你的项目中。
    这样就可以了。这样就不会有版本问题。
      

  8.   

    找到office安装目录下的Excel.exe. 
    利用VS里面的命令工具用cd命令转到C:\Program Files\Microsoft Office\OFFICE11目录(office安装目录),然后输入tlbimp excel.exe产生一个excel.dll 然后引用此dll 
      

  9.   

    錯誤:沒有多載15個參數! 
    版本不同,参数的数量也不同。
    参数虽然多,但一般都没用的,你只需要指定前面的两个参数指定路径,后面的剩多少个参数,就传多少个Missing.Value进去,OK。
      

  10.   

    至于版本通用,我无能为力。因为引用的dll都不一样
      

  11.   


    我的office是2000的,用tlbimp excel.exe會出錯,改用tlbimp excel9.OLB就可以了