C# 创建新的Excel工作表并将其命名

C# 创建新的Excel工作表并将其命名,c#,excel,C#,Excel,我只将数据写入1张Excel工作表,但我想制作一张新工作表,并将其命名为“xxx”,并在其中写入数据 以下是我现在拥有的: private static Microsoft.Office.Interop.Excel.ApplicationClass appExcel; private static Workbook newWorkbook_First = null; private static _Worksheet objsheet = null; excel_init("C:\\Users

我只将数据写入1张Excel工作表,但我想制作一张新工作表,并将其命名为“xxx”,并在其中写入数据

以下是我现在拥有的:

private static Microsoft.Office.Interop.Excel.ApplicationClass appExcel;
private static Workbook newWorkbook_First = null;
private static _Worksheet objsheet = null;

excel_init("C:\\Users\\me\\Desktop\\excel2.xlsx");

for (int i = 1; i < WindowsXPLijst.Count; i++)
{
    excel_setValue("B" + i, WindowsXPLijst[i]);
}

excel_close();

static void excel_init(String path)
{
    appExcel = new Microsoft.Office.Interop.Excel.ApplicationClass();

    if (System.IO.File.Exists(path))
    {
        // then go and load this into excel
        newWorkbook_First = appExcel.Workbooks.Open(path, true, true);
        objsheet = (_Worksheet)appExcel.ActiveWorkbook.ActiveSheet;
    }
    else
    {
        try
        {
            appExcel = new Microsoft.Office.Interop.Excel.ApplicationClass();
            appExcel.Visible = true;
            newWorkbook_First = appExcel.Workbooks.Add(1);
            objsheet = (Microsoft.Office.Interop.Excel.Worksheet)newWorkbook_First.Sheets[1];
        }
        catch (Exception e)
        {
            Console.Write("Error");
        }
        finally
        {
        }
    }

}

static void excel_setValue(string cellname, string value)
{
    objsheet.get_Range(cellname).set_Value(Type.Missing, value);
    objsheet.get_Range(cellname).Interior.Color = System.Drawing.ColorTranslator.ToOle(System.Drawing.Color.Red);
}

这将在最后一张图纸之后创建新图纸:

Dim WS As Worksheet 
Set WS =Sheets.Add(After:=Sheets(Worksheets.count)) 
WS.name = "xxx"

此代码是找到的代码的浓缩版本

愚蠢的问题:它找不到类型或命名空间。如何解决此问题?此答案是用VBA编写的,而您正在寻找C#答案。从问题中去掉标记,@wouterOops。。。你是对的,它建议使用VBA标记,所以我添加了它。。哈哈。。没那么聪明。谢谢你删除标签。非常抱歉@ParadoxExcel.Worksheet newWorksheet;newWorksheet=(Excel.Worksheet)Globals.ThisWorkbook.Worksheets.Add();使用我的代码只是:
appExcel.Worksheets.Add()谢谢你帮我:)
Dim WS As Worksheet 
Set WS =Sheets.Add(After:=Sheets(Worksheets.count)) 
WS.name = "xxx"