私は、複数のオプションである3つのリストボックスで設計されたユーザフォームを持っています。ユーザフォームのチェックボックスのチェックを外す
また、「フィルタ」、「フィルタ解除」、「終了」の3つのコマンドボタンがあります。
私はシートのボタンでuserformへのアクセス権を持っていますが、以下のコードがあります。
ユーザーフォームから、チェックボックスをオンにして[フィルタ]をクリックします。これで、私は自分のシート "データ"にフィルタリングされた結果を見ることができました。
問題は、リストボックスに前の選択肢がある「データ」シートのボタンをクリックしているときです。リストボックスの前の選択をクリアしたいと思います。 現時点では、私はこの無害なボタンを使用しています。
私はそれをメインのコマンドボタンに入れたいと思います。
私はこの
Sub dev()
Userform1.show
Call userform1.CBUnfilter
end sub()
のようなものを試してみましたが、これは「プロパティエラーの無効な使用」を示しました。
どのようにすればいいですか?
この
はPrivate Sub CBFilter_Click()
If CBFilter.Caption = "Filter" Then
Call DoFilter.DoFilter
Else
'do something
End If
End Sub
が、これはユーザーフォームでunfilterボタンのコードでユーザーフォームでの私のフィルタボタンのコードです
Private Sub CBUnfilter_Click()
Dim icount, jcount, kcount As Integer
If CBUnfilter.Caption = "Unfilter" Then
For icount = 0 To Me!ListBox1.ListCount
Me!ListBox1.Selected(icount) = False
Next icount
For jcount = 0 To Me!ListBox2.ListCount
Me!ListBox2.Selected(jcount) = False
Next jcount
For kcount = 0 To Me!ListBox3.ListCount
Me!ListBox3.Selected(kcount) = False
Next kcount
End If
End Sub
誰かができunfilter機能を持つように助けてもらえシートのボタンから呼び出すことができます。
としてユーザーフォームのショーは、2つの異なる要求のようですね。私はあなたが1つの質問ごとに1つの要件にそれを分解することをお勧めします。だから私はあなたの最初のクエリを支援しようとします..あなたはあなたのシート内のボタンを押してフォームを呼び出すeveytimeをリセットするフィールドをしたい場合は、このような何かを試してください:あなたのフォームを宣言し、 * 'Dim oForm As New Userform1' **。これでフォームを** 'oForm.Show' **と呼びます。これはあなたのフォームをリセットするのに役立ちます。あなたがフォームをきれいに終了しなければならないという警告があります。 – Zac
@Zac私のリクエストは異なります。私はシートのボタンの中に、フィルターのないボタンの機能を持っていたいと思います。 – Jenny
'Call userform1.CBUnfilter'の代わりに' Me.CBUnfilter_Click'を試してください –