構文
構文は以下の通りです。
リストボックス名.Clear
解説
リストボックスに表示されている全てのデータを削除するには、Clearメソッドを使用します。
使い方
具体的な使い方を紹介します。
Private Sub CommandButton1_Click()
' ListBox1のデータを削除
ListBox1.Clear
End Sub
' ListBox1のデータを削除
ListBox1.Clear
End Sub
上記は、ボタンをクリックするとリストボックスのデータが削除される内容となります。
プログラミング例
以下に、プログラミング例を紹介します。
(例1)ユーザーフォーム上の閉じるボタンでリストボックスのデータを削除する
ユーザーフォーム上に閉じるボタンを配置し、そのボタンがクリックされたときにリストボックスのデータを削除します。
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
' フォームが閉じられる際にListBox1のデータを削除
If CloseMode = vbFormControlMenu Then
ListBox1.Clear
End If
End Sub
' フォームが閉じられる際にListBox1のデータを削除
If CloseMode = vbFormControlMenu Then
ListBox1.Clear
End If
End Sub
(例2)シートの特定セルにデータが入力された時にリストボックスデータを削除する
シート上の特定のセルにデータが入力された場合にリストボックスのデータを削除します。
Private Sub Worksheet_Change(ByVal Target As Range)
' 条件:C2セルにデータが入力されたらListBox1のデータを削除
If Target.Address = "$C$2" And Target.Value <> "" Then
ListBox1.Clear
End If
End Sub
' 条件:C2セルにデータが入力されたらListBox1のデータを削除
If Target.Address = "$C$2" And Target.Value <> "" Then
ListBox1.Clear
End If
End Sub
まとめ
Clearメソッドを使用すると、リストボックスに表示されている全てのデータを削除することができます。データは一時的に削除されますが、フォームのInitializeイベントプロシージャーなどでデータを設定している場合は、フォームを再表示すれば元に戻せます。是非活用してください。