Private Sub ComboBox1_DropButtonClick()
If ComboBox1.ListCount > 0 Then
ActiveSheet.ComboBox1.Clear
End If
For N = 1 To ActiveWorkbook.Sheets.Count - 1
ComboBox1.AddItem ActiveWorkbook.Sheets(N).Name
Next N
End Sub
我是 VBA 新手,所以请多多包涵。我可能不是最好的开始方式。
该代码正在获取我的工作簿中每个工作表的名称(最后一张工作表除外)并将它们添加到组合框列表中。起初,每次我单击下拉列表时,都会再次添加所有工作表名称,从而使列表随着每次单击而继续增长。我的补救措施是在每次单击时首先清除组合框并重新填充。
但是,使用 clear 选项时,在进行选择时不会显示该值。不使用 clear 选项时显示正常。其他一切仍然有效,但我需要它来显示所选值,以免用户感到困惑。
有没有更好的方法来完成我所需要的?
编辑:如果重要的话,这不在用户表单中,它只是直接位于工作表上的活动 x 组合框。