この配列は固定か、または一時的にロックされています。(Visual Basic)

更新 : 2007 年 11 月

このエラーでは以下の原因が考えられます。

  • 固定サイズの配列の要素数を変更するために ReDim を使用しています。

  • モジュール レベルの動的配列を再定義しようとしていますが、その配列の要素の 1 つがプロシージャに引数として渡されています。要素が引数として渡された場合、その配列はロックされ、プロシージャ内の参照パラメータのメモリが解放されなくなります。

  • 配列を含む Variant 変数に値を代入しようとしましたが、その Variant は現在ロックされています。

このエラーを解決するには

  1. ReDim を使用して元の配列を固定ではなく動的として宣言するか (配列がプロシージャ内で宣言されている場合)、要素数を指定せずに宣言します (配列がモジュール レベルで宣言されている場合)。

  2. その要素を渡す必要があるのかどうかを確認します。これは、要素がモジュール内のすべてのプロシージャから参照できるためです。

  3. Variant がロックされている原因を判断し、解決します。

参照

その他の技術情報

Visual Basic における配列