检查上一个工作表的名称

时间:2016-01-15 01:09:10

标签: excel vba excel-vba

我试图查看上一张工作表的名称,看它是否等于"Field_10"。如果是的话,我不希望它做任何事情,但如果它没有,我想添加新的工作表。

只有一张标题为" Sheet1" 的预期输出 输出"添加新表"并添加了十张名为Field_1的新表格,一直到Field_10。

已添加工作表(Field_1,...,Field_10)时的预期输出: 输出"已添加新工作表"并且如果声明退出。

我已经包含了MsgBox来帮助调试。问题是,我是否检查最后一个工作表名称是否等于" Field_10"或者不等于" Field_10",它总是输出"已经添加的新工作表"。

    If ThisWorkbook.Worksheets(Worksheet.Count).Name = "Field_10" Then
    'If ThisWorkbook.Worksheets(Worksheet.Count).Name <> "Field_10" Then
        MsgBox ("New sheets already added")
    Else
        MsgBox ("Adding new sheets")
        On Error Resume Next
        For h = 1 To 10
            Worksheets.Add(After:=Worksheets(Worksheets.Count)).Name = "Field_" & CStr(h)
        Next h
    End If

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

使用以下sub:

    Sub AddSheets()
    Dim NewSheetNo As Integer

        If ThisWorkbook.Worksheets(Worksheets.Count).Name = "Field_10" Then
           MsgBox ("New sheets already added")
        Else
           MsgBox ("New sheets are being aded...")
            On Error Resume Next
            For NewSheetNo = 1 To 10
                Worksheets.Add(After:=Worksheets(Worksheets.Count)).Name = "Field_" & NewSheetNo
            Next
        End If
    End Sub