
VBAのフォーム上で、複数選択ができるListBox1を作っています。
ListBox1を選択する度に、ListBox2へListBox1の選択内容で
絞り込んだListBox2のリストを作るという処理をしたいのですが、
ListBox1_ClickイベントでListBox1のリストクリック時に
何も反応がありません。
.MultiSelect = fmMultiSelectSingle
で指定した複数リストボックスはClickイベントが拾えないのでしょうか?
ListBox1リスト内のデータ選択・解除の度にイベントが
発生するようにしたいです。
宜しくお願いします。
A 回答 (8件)
- 最新から表示
- 回答順に表示
No.8
- 回答日時:
>Changeでも無理でした。
。そーですか
イベント発生確認のためのサンプルを作ってみましたので試してみてください
準備
新しいブックを作成する
userformを作成し
listbox を1つ
label を1つ
textbox を1つ
commandbutton を2つ
これをuserform上に作成してください
配置、大きさは適当でよいです
次のコードすべてをuserformモジュールへコピペしてください
後は、作成したuserformを表示してください
Private Sub UserForm_Initialize()
If Range("a1").Value = "" Then ActiveSheet.Range("a1:a10").Formula = "=row(a1)*7"
ListBox1.RowSource = "a1:a10"
ListBox1.MultiSelect = fmMultiSelectSingle
Label1.Caption = "Singl"
CommandButton1.Caption = "Singl"
CommandButton2.Caption = "Multi"
End Sub
Private Sub CommandButton1_Click()
ListBox1.MultiSelect = fmMultiSelectSingle
Label1.Caption = "Singl"
End Sub
Private Sub CommandButton2_Click()
ListBox1.MultiSelect = fmMultiSelectMulti
Label1.Caption = "Multi"
End Sub
Private Sub ListBox1_Click()
MsgBox "クリックイベント発生"
TextBox1.Value = ListBox1.Value
End Sub
Private Sub ListBox1_Change()
If Label1.Caption = "Singl" Then Exit Sub
MsgBox "チェンジイベント発生"
'知りたいのは、これのような気がします↓↓
TextBox1.Value = ListBox1.List(ListBox1.ListIndex)
End Sub
サンプルのデータは表示されているシートに勝手に作成します
commandbuttonでsinglselectかmaltiselectの選択が出来ます
labelには現在の設定が表示されます
textboxにlistboxで選択した値が表示されます
多分、これで解決するのではと思いますが
私の見当違いでしたら無視してください
No.7
- 回答日時:
マルチセレクトで、listboxの値を拾うのは、
以下のような感じで、拾えました。
Private Sub ListBox1_Change()
Dim i As Integer
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) Then
Debug.Print ListBox1.List(i)
End If
Next
End Sub
No.6
- 回答日時:
なるほど、
シングルセレクトしか、確認していませんでした。
複数選択にすると、clickイベントは、
何も出ませんね。
changeイベントだと、nullを返すので、
質問者さんの、反応無しは、不思議ですね。
myRangeさん、ありがとうございました。
No.4
- 回答日時:
>やはり、ListBox1_Clickではイベントが発生しないようです
まさかと思いますが。異様に器用なことをしていません。
まさか、標準モジュールにイベント書いていないですよね。
イベントは、フォームに貼り付けた、
リストボックスをダブルクリックして、
コードを書くところを出しますが。
私の勘違いなら、ごめん!!
No.3
- 回答日時:
お急ぎのようですので、横から失礼して。
。。>Changeでも無理でした。。
これは2通りの意味に取れます。
1.Changeイベントの発生が確認できなかった
2。Changeイベントでのコードがうまく動作しなかった
Changeイベントは発生するので、2の意味だろうと推測します。
なら、Changeイベントのコードを提示した方がいいでしょう。
以上です。
No.2
- 回答日時:
listbox1に、値をセットして、以下のイベントを
書いて、ユーザーフォームを表示し、クリックすると
イミディエイトウィンドに、値が出ますよ。
Private Sub ListBox1_Click()
Debug.Print UserForm1.ListBox1.Value
End Sub
>複数選択ができるListBox1
これを書いて、
>MultiSelect = fmMultiSelectSingle
一体、、何がしたいのですか、??
回答ありがとうございます。
記述を間違えました。すいません。
MultiSelect = fmMultiSelectMulti
です。
やはり、ListBox1_Clickではイベントが発生しないようです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
確定申告しなかった・無申告の人をどうやって見つけるのか元国税調査官に聞いてみた
無申告の方などを対象に税務調査を行う国税局の元税務調査官さんに、どう無申告を探すのか聞いてきました。
-
リストボックスの選択解除
Visual Basic(VBA)
-
EXCEL2013 VBA ListBox 未選択
Excel(エクセル)
-
VBA ユーザーフォームのChangeイベントを停止したい
Access(アクセス)
-
4
ユーザーフォーム スクロールバー 非表示にしたい
Excel(エクセル)
-
5
UserForm1.Showでエラーになります。
工学
-
6
エクセルVBAでフォームのListboxをスクロールするには?
その他(Microsoft Office)
-
7
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
8
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
9
ExcelVBAでListViewが使用できない
Visual Basic(VBA)
-
10
VBA:ユーザーフォームのマルチページに色を付けたい。
Word(ワード)
-
11
excel VBA リストボックス複数選択後の処理
Visual Basic(VBA)
-
12
EXCEL VBA リストボックスの列を指定してForeColorを変更する方法について
Excel(エクセル)
-
13
VBAでユーザーフォームを再表示させたい。
Excel(エクセル)
-
14
ClickとChangeイベントの違いはどこにあるの。
Visual Basic(VBA)
-
15
VBA エンターキーでイベントに入りたい。
PowerPoint(パワーポイント)
-
16
ユーザフォーム AfterUpdate処理について
Visual Basic(VBA)
-
17
コンボボックスにリストが表示されません・・・
Excel(エクセル)
-
18
excelのリストボックスで選択した項目をアクティブセルに入力方法
Excel(エクセル)
-
19
VBA リストボックスをダブルクリックしデータを修正したいのですが…。
Visual Basic(VBA)
-
20
VB6,リストボックスの特定行の色変更は可能?
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
アクセス+vb 複数コントロー...
-
5
ポストバック(__doPostback)へ...
-
6
【ASP2.0】TextBoxのフォーカス...
-
7
【ASP.NET】マスターページに配...
-
8
パスワードつきホームページ ト...
-
9
c# 文字列の最後から1文字削除...
-
10
HTMLボタンの文字色を変え...
-
11
DataGridViewのチェックボック...
-
12
リンクでPOSTデータを送信する...
-
13
ボタンを押すと、テキストエリ...
-
14
Accessの画面更新を一時的に停...
-
15
同じソリューション内の別のプ...
-
16
チェックボックスに全てチェッ...
-
17
ブラウザを閉じずにセッション...
-
18
VBAでこれってどういう意味でし...
-
19
コネクション・セッション・ト...
-
20
DVD-Rの「セッションを閉じる」...
おすすめ情報
公式facebook
公式twitter