在某些情况下,您需要通过VBA代码或宏创建具有一定数量工作表的新工作簿。这是一个简单的宏,可让您创建一个新工作簿>打开并保存最多255个新工作表。在此示例宏,我们将创建一个包含10个工作表的新工作簿。

Option Explicit _Sub create_workbook()

昏暗的wb作为工作簿集wb = NewWorkbook(10)

End Sub_ _Function NewWorkbook(wsCount为整数)作为Workbook昏暗OriginalWorksheetCount作为长集NewWorkbook = Nos如果wsCount <1或wsCount> 255,则退出函数OriginalWorksheetCount = Application.SheetsInNewWorkbook Application.SheetsInNewWorkbook = wsCount Set NewWorkbook = Workbooks.Add Application.SheetsInNewWorkbook = OriginalWorksheetCount结束Function_代码说明:

首先,我们有一个名为“ create_workbook”的过程。在此过程中,我们有一个变量wb作为工作簿,并通过该变量调用函数NewWorkbook。因此,将调用新函数,并将wswscount设置为10,这是新工作簿中的工作表计数。

然后转到被调用的函数_Function NewWorkbook(wsCount为Integer)作为Workbook。_wsCount的值为10,该值从create_workbook子传递。

_设置NewWorkbook =否

|首先,将NewWorkbook设置为空,以便我们可以清除可以在任何先前代码中为其分配的任何其他值。

如果wsCount <1或wsCount> 255,则退出功能

接下来,我们必须检查从子传递的值是小于1还是大于255。如果对这些检查中的任何一个答案为是,则退出该函数。

OriginalWorksheetCount = Application.SheetsInNewWorkbook

excel选项页面中有一个参数,用于设置要包含在新工作簿中的工作表数。我们将此值传递给变量_OriginalWorksheetCount。_*该变量将保留excel选项中已预先设置的默认工作表数。

Application.SheetsInNewWorkbook = wsCount

然后,我们将wsCount的值(从子项传递到excel选项中的参数)指定要包含在新工作簿中的工作表数。因此,现在此参数将从原来的值更改为10。原来的值可以是1或3或用户设置的任何其他数字。

Set NewWorkbook = Workbooks.Add

我们创建一个分配给NewWorkbook的新工作簿。将使用wsCount中指定的工作表数创建此新工作簿。您将看到一个新的工作簿,其中包含10张标题为Sheet1至Sheet10的工作表。请参阅下面的图片,了解已创建的新文件Book3。

img1

下图将向您显示在新工作簿中创建的工作表数。

img2

数字10还将显示在Excel Options的Application.SheetsInNewWorkbook参数中,如下图–

img33

Application.SheetsInNewWorkbook = OriginalWorksheetCount Application.SheetsInNewWorkbook返回到设置wsCount之前的原始编号。因此,如果原始数字为1或3,则此参数现在将返回该数字。

img55

image 48

如果您喜欢我们的博客,请在Facebook上与您的朋友分享。您也可以在Twitter和Facebook上关注我们。

我们希望收到您的来信,请让我们知道我们如何改进,补充或创新我们的工作,并为您做得更好。写给我们