gpt4 book ai didi

excel - 在 workbook_open 上添加工作表

转载 作者:行者123 更新时间:2023-12-04 21:26:19 25 4
gpt4 key购买 nike

我有一个现有的工作表“StudentSheet1”,我需要根据用户需要多次添加。

例如,如果用户在单元格“A1”中输入 3,则保存并关闭工作簿。

下次打开工作簿时,我想要三张工作表:“StudentSheet1”、“StudentSheet2”和“StudentSheet3”。

所以我将在“Workbook_Open”事件中有代码。我知道如何插入新工作表,但不能插入此特定工作表“StudentSheet1”三遍

这是我的代码:

Private Sub Workbook_Open()
Application.ScreenUpdating = False
Dim ws As Worksheet
Set ws = ActiveWorkbook.Sheets.Add(Type:=xlWorksheet, After:=Worksheets(1))
Application.ScreenUpdating = True
End Sub

最佳答案

编辑

对不起,我看错了问题,试试这个:

Private Sub Workbook_Open()
Dim iLoop As Integer
Dim wbTemp As Workbook

If Not Sheet1.Range("A1").value > 0 Then Exit Sub

Application.ScreenUpdating = False

Set wbTemp = Workbooks.Open(Filename:="//Ndrive/Student/Student.xlsm")

wbTemp.Sheets("StudentSheet1").Copy After:=ThisWorkbook.Sheets(Sheets.Count)
wbTemp.Close

Set wbTemp = Nothing

With Sheet1.Range("A1")
For iLoop = 2 To .Value
Sheets("StudentSheet1").Copy After:=ThisWorkbook.Sheets(Sheets.Count)
ActiveSheet.Name = "StudentSheet" & iLoop
Next iLoop

.Value = 0
End With

Application.ScreenUpdating = True

End Sub

为什么要在打开的工作簿上添加工作表?如果用户禁用宏,则不会添加任何工作表。正如托尼所说,为什么不在用户调用时添加工作表?

编辑
根据@Sidd 的评论,如果您需要先检查工作表是否存在,请使用此功能:
Function SheetExists(sName As String) As Boolean
On Error Resume Next
SheetExists = (Sheets(sName).Name = sName)
End Function

关于excel - 在 workbook_open 上添加工作表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8857640/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com