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

このエラーの原因は次のとおりです。

  • ReDimを使用して、固定サイズの配列の要素数を変更します。

  • モジュール レベルの動的配列を再調整します。この配列では、1 つの要素がプロシージャに引数として渡されています。 要素が渡されると、プロシージャ内の参照パラメーターのメモリの割り当てを解除しないように配列がロックされます。

  • 配列を含む Variant 変数に値を割り当てようとしていますが、 Variant は現在ロックされています。

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

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

  2. 要素がモジュール内のすべてのプロシージャ内に表示されるため、本当に要素を渡す必要があるかどうかを判断します。

  3. Variantをロックしている内容を特定し、修正します。

こちらも参照ください