首页 > 解决方案 > 向组合框添加多个范围

问题描述

我有一个组合框,我想添加 E1,然后根据一些变量在 E2 和 E13 之间添加另一个范围。但是会发生的是添加了整个范围,E1:E13。这是代码:

Sheets("GraphChoice").MonthComboBox.AddList = Sheets("FormInfo").Range("E1", "E" & startmonth + 1 & ":E13")

是否可以向组合框添加多个范围?

标签: excelvba

解决方案


试试这个代码

Sub Test()
Dim a, e, r As Range, i As Long
With Sheets("FormInfo")
    Set r = Application.Union(.Range("E1"), .Range("E4:E13"))
    ReDim a(1 To r.Cells.Count)
    For Each e In r
        i = i + 1
        a(i) = e
    Next e
    Sheets("GraphChoice").MonthComboBox.List = a
End With
End Sub

推荐阅读