如何使用vb.net代码从现有的excel文件中删除某些特定的工作表?

时间:2018-07-26 10:12:16

标签: vb.net

我正在尝试下面的vb.net代码从excel文件中删除某些特定的工作表,但结果没有达到我的预期。实际上,我需要将该vb.net代码添加到UiPath中的“调用vba”活动中。在这里,我附上了我所有工作的快照。我是vb.net的新手,需要对以下代码进行说明。

Try

app = New Microsoft.Office.Interop.Excel.ApplicationClass
workbook= app.Workbooks.Open(filePath)
TryCast(workbook.Sheets(sheetName),Worksheet).Delete()
workbook.Save
System.Diagnostics.Process.GetProcessesByName("excel")(0).Kill

Catch ex As Exception

End Try

Declared variables, Their types and receptive values

2 个答案:

答案 0 :(得分:0)

您可以将Excel应用程序范围工作簿的输出创建为ExcelWorkbook

使用ExcelWorkbook.GetSheets可以获取工作表,并针对每个循环对其进行迭代,如下所示: ExcelWorkbook.GetSheets中的foreach项目

现在您有了每个工作表名称,您可以执行删除操作或也可以跳过它

谢谢!!可能对您有帮助

答案 1 :(得分:0)

非常感谢您的所有回答。在这里,我自己解决了这一问题,其中包括以下两个小代码行。

Try

    app = New Microsoft.Office.Interop.Excel.ApplicationClass
    workbook= app.Workbooks.Open(filePath)
    app.DisplayAlerts = False
    TryCast(workbook.Sheets(sheetName),Worksheet).Delete()
    app.DisplayAlerts = True
    workbook.Save
    System.Diagnostics.Process.GetProcessesByName("excel")(0).Kill

    Catch ex As Exception

End Try