使用C#保存Excel 2007及以上
我包括这个:
using Excel = Microsoft.Office.Interop.Excel;
我希望能够打开一个Excel文件XLSX,并将其另存为一个不同的文件:
xlWorkBook.SaveAs(xlWorkBook.Path + @"\XMLCopy.xls", Excel.XlFileFormat.xlXMLSpreadsheet, ,, false, false, Excel.XlSaveAsAccessMode.xlNoChange, ,,,,);
上面有缺less的参数,我不明白为他们input什么!
这是我的完整代码:
Excel.Application xlApp; Excel.Workbook xlWorkBook; Excel.Worksheet xlWorkSheet; Excel.Range range; string str; int rCnt = 0; int cCnt = 0; xlApp = new Excel.ApplicationClass(); xlWorkBook = xlApp.Workbooks.Open("csharp.net-informations.xls", 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0); xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
问题 :如何使用上面的c#使用不同的名称/path保存Excel文件?
您需要使用Visual Studios 2010在C#中正确使用可选参数。
如果你不能使用Visual Studios 2010,那么Eddy的build议Type.Missing应该可以工作。
当使用具有可选参数的方法(而不是使用Type.Missing)时,调用函数时使用命名参数通常是一个好主意。
另外,你应该意识到可选参数的限制和怪癖(尽pipe大多数参数不应该影响你,因为你不是用可选参数创build方法):
- http://www.grumpydev.com/2010/04/19/optional-parameters-in-c4-c3-and-vb-net-with-a-side-order-of-il-quirks/
- http://geekswithblogs.net/BlackRabbitCoder/archive/2010/06/17/c-optional-parameters—pros-and-pitfalls.aspx
- http://lostechies.com/jimmybogard/2010/05/18/caveats-of-c-4-0-optional-parameters/
应该指出,我不build议使用可选参数创build方法。 重载方法或创build一个新的对象,用户可以在调用方法之前设置对象属性 。