VBAで自動化 セル・値の取得と貼り付け 配列

【VBA】Excel VBAの配列内容を削除するEraseステートメント

Eraseステートメントの基本概要

【Eraseステートメントとは?】
VBAで配列の内容を消去するために使用されるステートメントです。
主に動的配列で使用され、配列の要素を初期化します。

Eraseステートメントの使用方法

【基本的な構文】

Erase 配列名

【動的配列の初期化】
動的配列を使用している場合、Eraseを用いて配列を初期化(空にする)ことができます。

Eraseステートメントの使用例

【動的配列の初期化】

Dim arr() As Integer
ReDim arr(5)
arr(0) = 1
arr(1) = 2
' 配列を初期化
Erase arr

【複数の配列に適用】
Eraseの後に「,」区切りで複数の配列名を記載することで、一括で初期化することができます。

Dim arr1() As Integer, arr2() As Integer
ReDim arr1(5), arr2(10)
' 両方の配列を初期化
Erase arr1, arr2

Eraseステートメントの使用上の注意

【静的配列には適用不可】
Eraseは静的配列(事前にサイズが決まっている配列)には使用できません。
【配列のサイズが失われる】
Eraseを使用すると、動的配列のサイズが失われます。再度、配列を使用する場合はReDimステートメントでサイズを再定義する必要があります。

まとめ

Eraseステートメントは動的配列の要素を初期化するのに有用ですが、静的配列には適用できません。
配列をEraseした後、再利用する場合はサイズの再定義が必要になります。

-VBAで自動化, セル・値の取得と貼り付け, 配列