このサイトの記事内では「アフィリエイト広告」などの広告を掲載している場合があります。
消費者庁が問題としている「誇大な宣伝や表現」とならないよう配慮しコンテンツを制作しておりますのでご安心ください。
問題のある表現が見つかりましたらお問い合わせよりご一報いただけますと幸いです。

【VBA】連想配列を初期化(全消去)する方法

2024年9月14日

今回はVBAで連想配列を初期化(全消去)する方法を紹介します。

また、併せて一部の項目(キー)を消去する方法も紹介します。

この記事では↓の内容が分かります。

  • 連想配列を初期化(全消去)
  • 連想配列の一部の項目(キー)を消去

VBAが難しいと感じたら
ココナラにてVBAの作成依頼を受け付けています。
ご依頼・ご相談はこちらから

連想配列を初期化(全消去)(RemoveAllメソッド)

Sub Sample1()
    
    Dim dic As Object
    Set dic = CreateObject("Scripting.Dictionary")
    
    dic.Add "key1", "value1"
    dic.Add "key2", "value2"
    dic.Add "key3", "value3"
    
    dic.RemoveAll '項目を全消去
    Debug.Print dic.Count '0
End Sub

連想配列を初期化(全消去)するにはRemoveAllメソッドを使います。

dic.RemoveAllを行うとこれまで追加された項目とキーがすべて削除されます。

dic.Countで項目数を確認すると0個となっているのが分かります。

Dictionaryの一部のキーを削除する(Removeメソッド)

Sub Sample2()
    
    Dim dic As Object
    Set dic = CreateObject("Scripting.Dictionary")
    
    dic.Add "key1", "value1"
    dic.Add "key2", "value2"
    dic.Add "key3", "value3"
    
    dic.Remove "key1"
    Debug.Print dic.Count '2
End Sub

一部のキーを削除するためには、Removeメソッドを使います。

dic.Remove "key1"

Removeメソッドの引数には削除したいキーを指定します。(インデックスや値ではないので注意してください)

一部のキーを除外して処理したいときなどは、Removeメソッドを活用してみてください。

《VBA上級者になりたい人へ》
VBA上級者を目指したい人にはパーフェクトExcel VBA一択です。
この本を読み切れば間違いなくVBA上級者になれます。

created by Rinker
技術評論社
¥3,608 (2024/12/02 20:25:22時点 Amazon調べ-詳細)
VBAが難しいと感じたら
ココナラにてVBAの作成依頼を受け付けています。
ご依頼・ご相談はこちらから

VBA

Posted by やろまい