C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

ツリー一括表示

Excelでの名前の定義を使ってコンボボックスに一覧作りたい /アン (21/09/23(Thu) 19:57) #98139
Re[1]: Excelでの名前の定義を使ってコンボボックスに一覧作り.. /魔界の仮面弁士 (21/09/23(Thu) 20:22) #98140
  └ Re[2]: Excelでの名前の定義を使ってコンボボックスに一覧作り.. /アン (21/09/24(Fri) 16:14) #98144 解決済み


親記事 / ▼[ 98140 ]
■98139 / 親階層)  Excelでの名前の定義を使ってコンボボックスに一覧作りたい
□投稿者/ アン (1回)-(2021/09/23(Thu) 19:57:56)

分類:[.NET 全般] 

こんにちは。
環境:Microsoft Office 2019 x64bit使ってます。(Excel)

Excelで指定したセルを名前の定義使ってコンボボックスに一覧作りたいのですが、一つだけなら出来ます。これに
もう一つの名前の定義使って一緒にコンボボックスに一覧を表示させたい事です。

1、
セル指定がB2〜B10を「=Sheet2!$B$2:$B$10」
セル指定がC2〜C10を「=Sheet2!$C$2:$C$10」
この二つをコンボボックスに表示させたいのです。

Private Sub ComboBox1_Change()
If ComboBox1.ListIndex = 0 Then
End If

If ComboBox1.ListIndex = 1 Then
ComboBox2.ListFillRange = "=Sheet2!$B$2:$B$10" 'combobox2に表示させてます。
'ComboBox2.ListFillRange = "=Sheet2!$B$2:$C$10"'B2〜C10指定してもXでした。
End If

2,=Sheet2!$B$2:$B$21と指定すれば簡単に出来ます。
ただ、アイテムの種類事にエクセルで表作っております。

1でやりたい事
・B2〜B10セル表の名前がA,B,C,D,E,F,G,H,I
・C2〜C10セル表の名前がJ,K,L,M,N,O,P,Q,R

セル表でA〜Rをコンボボックスに表示させたいです。

2ではA〜Rを指定すれば出来ます。アイテムの種類別で指定したいので1のようにどうやれば出来るのでしょうか?
ご指導よろしくお願いします。

[ □ Tree ] 返信 編集キー/

▲[ 98139 ] / ▼[ 98144 ]
■98140 / 1階層)  Re[1]: Excelでの名前の定義を使ってコンボボックスに一覧作りたい
□投稿者/ 魔界の仮面弁士 (3187回)-(2021/09/23(Thu) 20:22:09)
No98139 (アン さん) に返信
> If ComboBox1.ListIndex = 0 Then
> End If
If 文の中身が空ですね。この判定って意味ありますか?
Exit Sub しているとかでも無さそうですし…。

> セル指定がC2〜C10を「=Sheet2!$C$2:$C$10」
> 'ComboBox2.ListFillRange = "=Sheet2!$B$2:$C$10"'B2〜C10指定してもXでした。
「Xでした。」とだけ書かれても、何のことだかわからないです。(^^;
どういう結果を期待しているのに、実際にはどうなってしまうのかを明確にしましょう。

また、C2:C10 ではなく B2:C10 にしているのは何故でしょうか?

もしも B2:C10 範囲の 18 要素を並べたいという意味であれば、
参照元データを 18 行用意しましょう。

それと、ComboBox2.ListFillRange を動的に書き換えたとして、
そのあと、ComboBox2.ListIndex や ComboBox2.Text は何も変更しなくて良いのでしょうか?
[ 親 98139 / □ Tree ] 返信 編集キー/

▲[ 98140 ] / 返信無し
■98144 / 2階層)  Re[2]: Excelでの名前の定義を使ってコンボボックスに一覧作りたい
□投稿者/ アン (2回)-(2021/09/24(Fri) 16:14:35)
魔界の仮面弁士さん
ありがとうございました。
解決済み
[ 親 98139 / □ Tree ] 返信 編集キー/


管理者用

- Child Tree -