6

我需要创建一个 Excel 电子表格,然后我需要重命名工作表。我究竟做错了什么?

这是我到目前为止的代码:

using System;
using System.Reflection;
using Excel = Microsoft.Office.Interop.Excel;

public class CreateExcelWorksheet
{
    static void Main()
    {
        Excel.Application oXL;
        Excel._Workbook oWB;
        Excel._Worksheet oSheet;

        oXL = new Excel.Application();
        oWB = (Excel._Workbook)(oXL.Workbooks.Add(Missing.Value));
        oSheet = (Excel._Worksheet)oWB.ActiveSheet;

        oSheet.Cells[1, 1] = "First Name";
        oSheet.Cells[1, 2] = "Last Name";
        oSheet.Cells[1, 3] = "Full Name";
        oSheet.Cells[1, 4] = "Salary";

        //Format A1:D1 as bold, vertical alignment = center.
        oSheet.get_Range("A1", "D1").Font.Bold = true;
        oSheet.get_Range("A1", "D1").VerticalAlignment = Excel.XlVAlign.xlVAlignCenter;
        oSheet.Name = "NewOne";

        string filename = "C:\\" + DateTime.Now.ToString("dd_MM_yy_hhmmss");
        oWB.SaveAs(filename + "asdaa" + ".xlsx");

        oWB.Close();
    }
}
4

2 回答 2

8

oWB.Worksheets是你找到床单的地方。

可以按索引Worksheets[1](或 2,或 3...)

可以按名字取他们Worksheets["SheetName"]

它们作为对象出现,因此将它们投射到(Worksheet).

Worksheet oSheet = (Worksheet)oWB.Worksheets["TheSheetYouWant"];

要更改名称:oSheet.Name = "NewName";

于 2013-05-28T16:19:35.663 回答
6

更短: workbook.Worksheets[1].Name = "Sheet Name";

于 2015-09-16T08:59:34.853 回答