如何将包含特定字符串的工作表名称添加到用户表单组合框中

时间:2018-05-21 09:10:39

标签: vba excel-vba excel

我正在尝试编写遍历当前excel中所有工作表的代码,如果工作表名称包含单词“Pack”,则会将其添加到我的userform组合框中。我的代码没有产生错误,但组合框似乎是空的。

Private Sub UserForm_Initialize()

Dim wS As Worksheet

PackComboBox.Font.Size = 12

    For Each wS In Sheets
        If LCase(wS.Name) Like "*Pack*" Then
            With PackComboBox
            .AddItem wS
            End With
        Else
        End If
        Next wS

    End Sub

任何帮助将不胜感激,谢谢!

1 个答案:

答案 0 :(得分:2)

你有一个大写字母LCase比较:

  

如果LCase(wS.Name)喜欢“ Pack ”那么

     

如果LCase(wS.Name)喜欢“ pack ”那么

With循环围绕For Each子句更有效。这样,PackComboBox只需要解决一次。

With PackComboBox
    For Each wS In Sheets
        If LCase(wS.Name) Like "*pack*" Then
            .AddItem wS.Name
        Else

        End If
    Next wS
End With