生成多个excel
我试过这个代码来创build一个Excel表。
Set ExcelObject = CreateObject("Excel.Application") ExcelObject.visible = True ExcelObject.WorkBooks.Add ExcelObject.Sheets(1).Cells(1,1).value = "My first excel"
但是我想要生成一个以上的Excel所以我试过这个代码 –
Set ExcelObject = CreateObject("Excel.Application") For x= 1 to 5 ExcelObject(x).visible = True ExcelObject(x).WorkBooks.Add 'Adds a workbook to an excel object x=x+1 ExcelObject.Sheets(1).Cells(1,1).value = "My first excel"
但它不工作,请帮忙!
你的代码有一些错误:
-
你错过了
Next x
-
自从使用
For..Next
语句后,您不必增加x
。Next x
会为你做。
工作代码:
对于VB.NET
:
Dim ExcelObject() As Object ExcelObject = New Object(5) {} For x = 1 To 5 ExcelObject(x) = CreateObject("Excel.Application") ExcelObject(x).visible = True ExcelObject(x).WorkBooks.Add() 'Adds a workbook to an excel object ExcelObject(x).Sheets(1).Cells(1, 1).value = "My first excel" Next x
对于VBScript
:
Dim ExcelObject(5) For x = 1 To 5 Set ExcelObject(x) = CreateObject("Excel.Application") ExcelObject(x).visible = True ExcelObject(x).WorkBooks.Add() 'Adds a workbook to an excel object ExcelObject(x).Sheets(1).Cells(1, 1).value = "My first excel" Next
可能想看看使用集合。 在上面的示例中,您正在使用ExcelObject(x).visible = True
—创build时,您还没有创build5个ExcelObjects
。
有几种方法可以做到这一点。 但是,当你添加一个工作簿时,你会玩什么。 您正在将工作簿的实例创build到工作簿集合中。 所以,而不是引用它为ExcelObject(x)
=>您需要引用项目中的工作簿
ExcelObject.WorkBooks.item(x)