構文
object(Key).Remove
Key・・・・Dictionaryでオブジェクト内で削除したいキーを指定します。【必須】
Removeメソッドは、Dictionary オブジェクトのキー(要素)を削除します。
通常の配列では存在しない削除用のメソッドが準備されている為、Loopする必要がありません。
Dictionaryのキー(要素)を削除するサンプルコード
'参照設定 Microsoft Scripting Runtime Public Sub sample() Dim dic As Dictionary Set dic = New Dictionary dic.Add "1月", "Jan" '■Dictionaryの0番目の要素を取得 Debug.Print dic.Keys(0) '1月 '■DictionaryのKeyが"1月"の要素→今回は0番目の要素を削除 dic.Remove "1月" '■削除済みなので実行時エラーが出る Debug.Print dic.Keys(0) '実行時エラー9 インデックスが有効範囲にありません dic.Add "1月", "Jan" dic.Add "2月", "Feb" '■Dictionaryの0番目の要素を取得 Debug.Print dic.Keys(0) '1月 '■DictionaryのKeyが"1月"の要素→今回は0番目の要素を削除 dic.Remove "1月" '■削除済みでキーがズレる。(埋めてくれる) Debug.Print dic.Keys(0) '2月 End Sub
注意点
- 配列と異なりDictionaryの削除された要素は埋めます。
関連記事
Dictionaryにキーと要素を追加する【Addメソッド】【ExcelVBA】
Dictionaryにキーが存在するかチェックする【Existsメソッド】【ExcelVBA】
DictionaryのExistsが動作しないのはValueで入れてない為【ExcelVBA】
コメント