添加新工作表c#(疑问)

问题描述 投票:0回答:2

我第一次使用C#Excel ...而且我想知道我如何在工作簿中添加新工作表。我一直在阅读一些帖子,但对我没有用,所以我要发布我的代码。

Microsoft.Office.Interop.Excel.Application Excel = new Microsoft.Office.Interop.Excel.Application();
Excel.Workbooks.Add();
Microsoft.Office.Interop.Excel._Worksheet Worksheet = Excel.ActiveSheet;

并且使用此代码,我正在使用我的唯一工作表,但是现在我想添加另一个具有MMPP名称的工作表,但是我不能...之后,我想在工作表MMPP中创建一个动态表。你能帮我一下吗?

感谢您阅读并尝试提供帮助!

c# excel vsto com-interop worksheet
2个回答
0
投票

您需要在工作簿的Sheets集合中添加工作表。

var Excel = new Microsoft.Office.Interop.Excel.Application();
var name = "some_name";
var wb = Excel.Workbooks.Add();
var sheet = wb.Sheets[name];

0
投票

您需要了解对象模型。在较高级别上,它是这样的:

  • Application
    • Workbooks
      • Workbook
        • Sheets
          • Worksheet
            • Range

Workbook对象具有两个公开Sheets对象的属性:SheetsWorksheets-Sheets集合包含许多类型的图纸(例如Chart图纸);如果要确保获得Worksheet对象,请使用Worksheets集合。

要创建新的工作表,请调用Add集合的Worksheets方法:

using Microsoft.Office.Interop.Excel;
var app = new Application;
var books = app.Workbooks; // grab a reference to the collection object; you'll want to clean it up later
var wb = books.Add();
var sheets = wb.Worksheets; // grab a reference to the collection object: you'll want to clean it up later
var sheet = sheets.Add();

[添加工作表将使该工作表成为ActiveSheet,但是您不必关心-使用您的sheet对象/变量来操纵新工作表。

ListObjectssheet属性是工作表上所有命名表的集合,因此类似地,您将调用sheet.ListObjects.Add在该工作表上创建一个新的ListObject。请参阅文档,其中包含完整的示例。

© www.soinside.com 2019 - 2024. All rights reserved.