繁体   English   中英

将工作表添加到Excel工作簿

[英]Adding a Sheet to an Excel Workbook

我正在尝试在Excel中创建具有多个Workbook表的Workbook ,但我不知道如何创建多个工作表。 我可以创建一个就好了,但是当我尝试创建第二个要写的文件时却出现了错误。

Dim app As Application = New Application
Dim xlApp As New Excel.Application
Dim xlWorkBook As Excel.Workbook
Dim newXlApp As Excel.Application = New Microsoft.Office.Interop.Excel.Application
Dim newXlWorkbook As Excel.Workbook
Dim newXlSheet As Excel.Worksheet
Dim newXlSheet2 As Excel.Worksheet

Public Sub createWorkBook()
    newXlWorkbook = newXlApp.Workbooks.Add()

    newXlSheet = newXlWorkbook.Sheets("Sheet1")
    newXlSheet2 = newXlWorkbook.Sheets.Add("Sheet2")

    newXlSheet.Cells(1, 1) = "Task ID"
    newXlSheet.Cells(1, 2) = "Collective Tasks"
    newXlSheet.Cells(1, 3) = "Supported Task"

    newXlSheet2.Cells(1, 1) = "Parent Collective Task"
    newXlSheet2.Cells(1, 2) = "Individual Task"
End Sub

我不确定是否重要,但是我还要打开一个单独的Excel Workbook

从我可以看到您的代码给出的错误将是:

类型为“ System.Runtime.InteropServices.COMException”的第一次机会异常

如果要将多个工作表添加到Excel Workbook ,请执行以下代码:

Dim app As New Excel.Application
Dim wb As Excel.Workbook = app.Workbooks.Add()
Dim ws As Excel.Worksheet

ws = CType(wb.Sheets.Add(Count:=10), Excel.Worksheet)

默认情况下, Workbook随附一张Workbook Sheet 如果要添加多个,请设置Count:= parameter 如您在我的示例中看到的,我使用了10 这将给我留下11张纸供您使用。

请注意, ws将是Workbook的最后一张纸。 在我的示例中,这将是Sheet11

如果要使用每个Worksheet则需要查看以下代码:

Dim ws1 As Excel.Worksheet = CType(wb.Sheets(1), Excel.Worksheet)
Dim ws2 As Excel.Worksheet = CType(wb.Sheets.Add(), Excel.Worksheet)

ws1.Cells(1, 1) = "Task ID"
ws1.Cells(1, 2) = "Collective Tasks"
ws1.Cells(1, 3) = "Supported Task"

ws2.Cells(1, 1) = "Parent Collective Task"
ws2.Cells(1, 2) = "Individual Task"

请注意, ws1引用了第一张纸。 如上所述,默认情况下, Workbook随附一张纸。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM