【问题标题】:Add Worksheet in external workbook在外部工作簿中添加工作表
【发布时间】:2016-09-27 01:12:54
【问题描述】:

我想在现有的 Excel 文件中添加工作表调用“主记录”。使用下面的代码,我可以创建工作表,但如果工作表已经退出,它正在创建具有不同名称的工作表,例如:Sheet2、Sheet3。

我不想创建任何其他工作表。它已经存在,而不仅仅是反映消息。请告知如何避免创建不必要的工作表。

Dim Wb As Workbook
Dim ws As Worksheet
Set Wb = Workbooks.Open(TextBox2.Text)
Set ws = Wb.Sheets.Add
    ws.Name = "Master Records"

Wb.Save
Wb.Close

【问题讨论】:

    标签: excel vba


    【解决方案1】:

    您需要检查它是否存在。

    Dim exists as Boolean
    Dim Wb As Workbook
    Dim ws As Worksheet
    Set Wb = Workbooks.Open(TextBox2.Text)    
    
    
    exists = False
    
    For i = 1 To Worksheets.Count
       If Worksheets(i).Name = "Master Records" Then
          exists = True
       End If
       If exists = True Then 'Exit loop early if it finds that the sheet exists
          Exit For
       End If
    Next i
    
    If Not exists Then
    Set ws = Wb.Sheets.Add
       ws.Name = "Master Records"
    Else
       MsgBox("Sheet Exists")
    End If
    

    【讨论】:

    • 仍在添加 sheet2。我有名为 Master Records 和 Sheet1 的工作表。当我运行代码时,它显示一条消息,因为工作表已经存在但创建另一个工作表
    • 对不起。我之前没时间测试,现在更新了 - Set ws=wb.sheets.Add 需要移动。
    猜你喜欢
    • 1970-01-01
    • 2018-01-25
    • 2017-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-26
    相关资源
    最近更新 更多