Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


11924 / 13646 ツリー ←次へ | 前へ→

【13267】コンボボックスの列見出しを非表示にする方法 miyake 04/4/29(木) 19:56 質問[未読]
【13268】Re:コンボボックスの列見出しを非表示にす... ichinose 04/4/29(木) 20:11 回答[未読]
【13270】Re:コンボボックスの列見出しを非表示にす... miyake 04/4/29(木) 20:41 質問[未読]
【13271】Re:コンボボックスの列見出しを非表示にす... ichinose 04/4/29(木) 20:51 発言[未読]
【13276】Re:コンボボックスの列見出しを非表示にす... miyake 04/4/29(木) 23:20 お礼[未読]
【13280】Re:コンボボックスの列見出しを非表示にす... ichinose 04/4/30(金) 7:10 発言[未読]

【13267】コンボボックスの列見出しを非表示にする...
質問  miyake  - 04/4/29(木) 19:56 -

引用なし
パスワード
   いつもお世話になっております。
教えてください。
たとえばA1:B5に商品リストがあるとします。1行目が列見出し(A1コード、B1商品名)になっているとして、A1:B5の範囲を商品リストという名前を付けるとします。次に、フォーム上のコンボボックスのrowsorceを商品リストとした場合、1行目の列見出しを非表示に方法を教えてください。

【13268】Re:コンボボックスの列見出しを非表示に...
回答  ichinose  - 04/4/29(木) 20:11 -

引用なし
パスワード
   ▼miyake さん:
こんばんは。

>いつもお世話になっております。
>教えてください。
>たとえばA1:B5に商品リストがあるとします。1行目が列見出し(A1コード、B1商品名)になっているとして、A1:B5の範囲を商品リストという名前を付けるとします。次に、フォーム上のコンボボックスのrowsorceを商品リストとした場合、1行目の列見出しを非表示に方法を教えてください。

このRowSorceは「商品リスト」と設定していると言う事ですよね?
「offset(商品リスト,1,0,ROWS(商品リスト)-1)」に
変えてみてはどうでしょうか?

【13270】Re:コンボボックスの列見出しを非表示に...
質問  miyake  - 04/4/29(木) 20:41 -

引用なし
パスワード
   ▼ichinose さん:
コードの中でoffset関数を使うと、エラーになってしまいました。
関数等ではなく、コンボボックスのプロパティの設定で、リストのフィールド名だけ非表示にするような設定はできないのでしょうか。
ちなみにコードは
Private Sub ComboBox1_DropButtonClick()
ComboBox1.RowSource = "商品コード"
End Sub
このようになっています。
コンボボックスのリストを開いたときに、行頭のフィールド名を非表示にして、値だけ表示させたいのですが。

【13271】Re:コンボボックスの列見出しを非表示に...
発言  ichinose  - 04/4/29(木) 20:51 -

引用なし
パスワード
   ▼miyake さん:
>コードの中でoffset関数を使うと、エラーになってしまいました。
>関数等ではなく、コンボボックスのプロパティの設定で、リストのフィールド名だけ非表示にするような設定はできないのでしょうか。
>ちなみにコードは
>Private Sub ComboBox1_DropButtonClick()
>ComboBox1.RowSource = "商品コード"
>End Sub
>このようになっています。
>コンボボックスのリストを開いたときに、行頭のフィールド名を非表示にして、値だけ表示させたいのですが。
最初の投稿では、「商品リスト」とありましたが・・・。
上述のコードの「商品コード」という名前でセルA1:B5を定義していると言う事ですか?

ならば、

>Private Sub ComboBox1_DropButtonClick()
ComboBox1.RowSource = "offset(商品コード,1,0,ROWS(商品コード)-1)"
>End Sub

で動いていますが・・・。
Excel2000で確認しています。

【13276】Re:コンボボックスの列見出しを非表示に...
お礼  miyake  - 04/4/29(木) 23:20 -

引用なし
パスワード
   ▼ichinose さん:
失礼しました。名前つき範囲は商品コードです。
rowsorceの値をダブルコーテーションで囲まなかったためコンパイルエラーになっていました。
ダブルコーテーションで囲みうまくいきました。ありがとうございました。
ちなみに、コントロールのプロパティの設定では、そのようにする設定はないのですかね。

【13280】Re:コンボボックスの列見出しを非表示に...
発言  ichinose  - 04/4/30(金) 7:10 -

引用なし
パスワード
   ▼miyake さん:
おはようございます。

>ちなみに、コントロールのプロパティの設定では、そのようにする設定はないのですかね。
ん?、Rowsourceは、プロパティですが・・・。

他の方法ということでしょうか?
「一旦、'商品コード'という定義された名前が該当するセル範囲をそのままコンボボックスのメンバとして設定した後、先頭メンバ、つまり見出しを削除する」
という方法なら知っていますが、
この場合、Rowsourceプロパティは、使えなかったと思います。

'============================================================
Private Sub ComboBox1_DropButtonClick()
  With ComboBox1
   .List = [商品コード].Value
   .RemoveItem 0
   End With
End Sub

確認して下さい。

11924 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free