Excel VBA質問箱 IV

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

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


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

【53672】UserFormのComboboxについて Tani 08/1/30(水) 19:42 質問[未読]
【53674】Re:UserFormのComboboxに... ichinose 08/1/30(水) 20:14 発言[未読]

【53672】UserFormのComboboxにつ...
質問  Tani  - 08/1/30(水) 19:42 -

引用なし
パスワード
   今晩は。
いつもお世話になります。

以前このサイトで複数行をUserFormのComboBoxに取り込むのに、Rowsourceを使わないコードを見させていただきそれを活用させていただいていました。

ここで質問が生まれてきました。
このコードを活用して、非表示又は、オートフィルターで非表示の状態になって
いるデータを拾わせる方法は有るでしょうか?
specialcells(xltypeVisible)を使おうとしましたが、ComboBoxにデータが全く入らなくなります。
何か良い方法がありましたら、アドバイスお願いします。

Private Sub userform_initialize()

 Dim myVal As Variant
  myVal = Range(Cells(6, 1), Cells(Rows.Count, 1).End(xlUp)).Resize(, 3).Value
  With UserForm3
     .ComboBox1.ColumnCount = 3
     .ComboBox1.ColumnWidths = "20;20;30"
     .ComboBox1.List = myVal
  End With

End Sub

【53674】Re:UserFormのCombobox...
発言  ichinose  - 08/1/30(水) 20:14 -

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


>このコードを活用して、非表示又は、オートフィルターで非表示の状態になって
>いるデータを拾わせる方法は有るでしょうか?
>specialcells(xltypeVisible)を使おうとしましたが、ComboBoxにデータが全く入らなくなります。

どのようなコードでうまくいかないのかコードを必ず掲載してください。
(それから、こういう処理には、入力データが必要ですから、そのデータまで
記述するのが質問者の仕事ですよ)
そのコードで何を理解していないのか 等が探れますし、
また、その記述が後々 このスレッド見た方の指針になりますから・・・。


方法は、いくつかありますが、

SpecialCells(xlCellTypeVisible)メソッドで
取得できたセル範囲を別に作業シートを設けておき
そこのコピーします。

XXX.SpecialCells(xlCellTypeVisible).copy worksheets("作業シート").range("a1")

↑ エラー処理は省略しています。


コピーされた作業シートのセル範囲をコンボボックスのメンバとして
登録する方法を考えると

.ComboBox1.List

が使えますよ


検討してみてください

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