我開始裝的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版本間能通用?謝謝!
Excel.Workbook ExcelBook = ExcelApp.Workbooks.Open(Path, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue, MissingValue);
錯誤:沒有多載15個參數!有沒有什麼辦法使其在不同的Excel版本間能通用?謝謝!
如果是数据导出可以用OleDB
SaveAs()
都會有錯的!
现在excel有2000,2003,2007
判断机器上的excel版本,再决定调用哪一个方法?
判断版本 Applicaiton.version 吧
判断版本 Applicaiton.version 吧
10.0 2000
11.0 2003
12.0 2007
放入你的Bin中,引用到你的项目中。
这样就可以了。这样就不会有版本问题。
利用VS里面的命令工具用cd命令转到C:\Program Files\Microsoft Office\OFFICE11目录(office安装目录),然后输入tlbimp excel.exe产生一个excel.dll 然后引用此dll
版本不同,参数的数量也不同。
参数虽然多,但一般都没用的,你只需要指定前面的两个参数指定路径,后面的剩多少个参数,就传多少个Missing.Value进去,OK。
我的office是2000的,用tlbimp excel.exe會出錯,改用tlbimp excel9.OLB就可以了