0

ComboBox の値を名前付き配列定数としてセットアップしたいと思います。ここで、Name Manager に移動して名前を定義し、次のような値を指定します。

={"A", "B", "C"}

ListFillRange は Range のみを取ることがわかったので、それに割り当てることはできません。

次のように、通常の名前付き範囲でも機能しますが、

myComboBox.ListFillRange = "MyList"

では、名前付き配列定数を割り当てて ComboBox を埋めるにはどうすればよいでしょうか。

4

2 に答える 2

1

多くの検索の後、私はこの解決策を見つけました:

myComboBox.List() = Evaluate(ThisWorkbook.Names("MyList").RefersTo)
于 2011-06-07T23:13:19.880 に答える
1

あなたの方法をうまく機能させることはできませんが、それはおそらく私の設定ですか?

これを試みるのが私だったら、

  1. 項目ごとにプログラムでリストをロードする

また

2i) 任意に "J" がリストフィル範囲であると仮定します

2ii) 名前付き範囲を定義します。たとえば、"COLJ" = =Sheet1!$J$2:INDEX($J$2:$J$65000,COUNTA($J$2:$J$65000)) とします。

2ii) 必要なアイテムを J2:Jx にコピー/フィルタリングします。

2ii) VBA、myComboBox.ListFillRange = "COLJ" を使用して Listfillrange を割り当てます。

于 2011-06-07T23:39:33.797 に答える