首页 > 解决方案 > 如何将包含特定字符串的工作表名称添加到用户表单组合框

问题描述

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

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

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

标签: vbaexcel

解决方案


比较中有一个大写字母LCase

如果 LCase(wS.Name) 喜欢 " Pack " 则

如果 LCase(wS.Name) 喜欢 " pack " 则

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

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

推荐阅读