以编程方式从工作簿中删除工作表

可以删除工作簿中的任意工作表。 若要删除工作表,请使用该工作表主机项或通过使用工作簿的表集合访问该工作表。

适用于: 本主题中的信息适用于 Excel 的文档级项目和 VSTO 外接程序项目。 有关详细信息,请参阅办公室应用程序和项目类型提供的功能。

使用工作表宿主项

如果在设计时将工作表添加到了文档级自定义项,请使用 Delete 方法来删除指定的工作表。 下列代码通过直接引用工作表主机项从工作簿中删除工作表。

重要

此代码仅在使用下列任意项目模板创建的项目中运行:

  • Excel 2013 工作簿

  • Excel 2013 模板

  • Excel 2010 工作簿

  • Excel 2010 模板

    如果要在任何其他类型的项目中执行此任务,则必须添加对 Microsoft.办公室的引用。Interop.Excel 程序集,然后必须使用该程序集中的类打开工作簿并删除工作表。 有关详细信息,请参阅“如何:通过主互操作程序集和 Excel 2010 主互操作程序集引用定位办公室应用程序。

使用工作表主机项删除工作表

  1. 调用 DeleteSheet1方法。

    Globals.Sheet1.Delete();
    

使用 Excel 工作簿的 Sheets 集合

在下列情况中通过 Microsoft Office Excel Sheets 集合访问工作表:

  • 想要删除 VSTO 外接程序中的工作表。

  • 想要删除的工作表是在运行时文档级自定义项中创建的。

    以下代码通过引用 Sheet 集合的索引号从工作簿中删除工作表。 此代码假定以编程方式创建了一个新工作表。

重要

如果要在任何其他类型的项目中执行此任务,则必须添加对 Microsoft.办公室的引用。Interop.Excel 程序集,然后必须使用该程序集中的类打开工作簿并删除工作表。 有关详细信息,请参阅“如何:通过主互操作程序集和 Excel 2010 主互操作程序集引用定位办公室应用程序。

使用 Excel 工作簿的表集合删除工作表

  1. 调用 Sheets 集合的 Delete 方法。

    ((Excel.Worksheet)this.Application.ActiveWorkbook.Sheets[4]).Delete();