項目を削除する

広告

リストボックスで指定した項目を削除する方法を確認します。

項目を削除するには「RemoveItem」メソッドを使います。

リストから行を削除します。

引数:
  object  設定するオブジェクトを指定します。
  index  削除する行を表す数値を指定します。

削除したい項目のインデックス番号を指定します。

実際の使い方としては次のようになります。

Dim index As Integer

index = sampleForm.listFoods.ListIndex
If index = -1 Then
    MsgBox "選択されていません"
Else
    sampleForm.listFoods.RemoveItem index
End If

※ListIndexプロパティについては『選択された項目を取得する』を参照して下さい。

また全ての項目を削除する場合には「Clear」メソッドを利用できます。

すべてのオブジェクトを削除します。

引数:
  object  設定するオブジェクトを指定します。

サンプルプログラム

では簡単なサンプルで試してみましょう。ボタン(オブジェクト名はdeleteButton)を1つ追加してClickイベント処理を記述します。

Private Sub deleteButton_Click()
    Dim index As Integer
    
    index = sampleForm.listFoods.ListIndex
    If index = -1 Then
        MsgBox "選択されていません"
    Else
        sampleForm.listFoods.RemoveItem index
    End If
End Sub

また呼びだすマクロは次の通りです。

testList3.bas

Sub テスト()
    Load sampleForm
    sampleForm.listFoods.AddItem "りんご"
    sampleForm.listFoods.AddItem "オレンジ"
    sampleForm.listFoods.AddItem "メロン"
    sampleForm.Show
End Sub

上記マクロを実行すると次のように表示されます。項目を1つ選択して「項目の削除」ボタンをクリックします。

選択された項目を削除する

すると次のように項目が削除されます。

選択された項目を削除する

( Written by Tatsuo Ikura )