Esta matriz es fija o está bloqueada temporalmente (Visual Basic)

Este error tiene estas causas posibles:

  • El uso de ReDim para cambiar el número de elementos de una matriz de tamaño fijo.

  • El redimensionamiento de una matriz dinámica en el nivel de módulo, en la que se pasó un elemento como argumento a un procedimiento. Si se pasa un elemento, la matriz se bloquea para evitar que se desasigne memoria para el parámetro de referencia dentro del procedimiento.

  • Se intenta asignar un valor a una variable Variant que contiene una matriz, pero la Variant está actualmente bloqueado.

Para corregir este error

  1. Haga que la matriz original sea dinámica en lugar de fija; para ello, declárela con ReDim (si la matriz se declara dentro de un procedimiento), o bien declárela sin especificar el número de elementos (si la matriz se declara en el nivel de módulo).

  2. Determine si realmente necesita pasar el elemento, ya que está visible en todos los procedimientos del módulo.

  3. Determine qué bloquea la variable Variant y corríjalo.

Vea también