添加新的工作表C#(怀疑)

时间:2019-11-21 15:34:11

标签: c# excel vsto com-interop worksheet

我第一次使用 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中创建一个动态表。 你能帮我一下吗?

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

2 个答案:

答案 0 :(得分:0)

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

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

答案 1 :(得分:0)

您将要了解对象模型。在高层次上,它是这样的:

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

Workbook对象具有两个公开Sheets对象的属性:SheetsWorksheets-Sheets集合保存许多类型的图纸({{例如1}}个工作表);如果您想确保获得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的{​​{1}}属性是工作表上所有已命名表的集合,因此类似地,您将调用ListObjects来创建一个新的sheet那张纸。请参阅文档,其中包含完整的示例。