I have created an excel workbook with many sheets like sheet1, sheet2,... etc. How can I rename these tab names dynamically in C#?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
You didn't spedify how do you access the excel file. However, example from here might be useful for you if you're using Microsoft.Office.Interop.Excel
. Note that it opens first sheet in the file, line: (Worksheet)xlBook.Worksheets.get_Item(1)
using Excel = Microsoft.Office.Interop.Excel;
object oMissing = System.Reflection.Missing.Value;
Excel.ApplicationClass xl=new Excel.ApplicationClass();
Excel.Workbook xlBook;
Excel.Worksheet xlSheet;
string laPath = Server.MapPath(@"\excel\xl_table.xls");
xlBook = (Workbook)xl.Workbooks.Open(laPath,oMissing,
oMissing,oMissing,oMissing ,oMissing,oMissing,oMissing
,oMissing,oMissing,oMissing,oMissing,oMissi ng,oMissing,oMissing);
xlSheet = (Worksheet)xlBook.Worksheets.get_Item(1);
xlSheet.Name = "CIAO";
xlBook.Save();
xl.Application.Workbooks.Close();
回答2:
One short note: If you don't need to specify them, you can get rid of all these optional parameters and use the short form:
xlBook = (Workbook)xl.Workbooks.Open(laPath);
Regards, Jörg