¿Porque formulario se paraliza después de llevar acabo un procedimiento de macros?

Y buenas tardes amigos expertos!
Me gustaría me ayudarán para identificar el problema que me surge al llamar dos formularios y llevar a ejecución un par de macros. El detalle es que cuando llevo a cabo la rutina de la primera macro me lo ejecuta bien, pero después se paraliza el primer form. Explico mas al detalle:

Tengo un formulario( formulario 1) que agrega datos a un listbox (mas de 10 columnas utilizo rowsource), después de agregar uno o varios registros, selecciono uno en el evento DblClick y me abre otro formulario (formulario 2) para poder editar cierta información( en caso de haberme equivocado), al modificar información se cierra el "formulario dos" y queda abierto el "formulario 1", pero al hacer esto el formulario 1 queda paralizado y no puedo presionar botones y excel se paraliza también y esto se quita cuando abro otro programa de windows, por ejemplo el bloc de notas, después de eso ya todo esta bien. Pero no logro entender que esta mal o porque hace esto. Mi pc no es porque lo probé en varias computadoras y hace lo mismo.

Anexo los códigos de formulario 1 y 2.

Form1

Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Application.ScreenUpdating = False
    uf = Hoja2.Range("A" & Rows.Count).End(xlUp).Row
    Range("C2").Activate
            valor = ListBox1.list(ListBox1.ListIndex, 2)
            Sheets("Trabajo").Range("C2:C" & uf).Find(What:=valor, LookAt:=xlWhole).Activate
Buscar.Show
Call sumar
Application.ScreenUpdating = True
End Sub

Form2

Private Sub UserForm_Initialize()
Sheets("Trabajo").Select
 Buscar.TextBox20 = Empty
  Buscar.txtFiltro1 = Empty
  Buscar.txtFiltro1 = ActiveCell
  Buscar.TextBox20 = ActiveCell.Offset(0, 3)
  Exit Sub
End Sub
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
If txtFiltro1 = "" Then MsgBox "El campo" & " " & Label8 & " " & "esta Vacío", vbCritical, "Error": Exit Sub
If TextBox20 = "" Then MsgBox "El campo" & " " & Label31 & " " & "esta Vacío", vbCritical, "Error": Exit Sub
Dim answer As Integer
Dim re As Integer
If TextBox20 = "" Then
MsgBox "No Agregó Nngún Registro", vbCritical, "ALERTA"
Else
Mensaje = MsgBox("¿Esta Seguro de Editar la Cantidad del Lote?", vbYesNo + vbQuestion)
End If
If Mensaje = vbYes Then
 ActiveCell.Offset(0, 3) = TextBox20.Value
Else
 Exit Sub
End If
Unload Buscar
Hoja2.Select
Application.ScreenUpdating = True
End Sub
Private Sub TextBox1_Change()
Me.TextBox9.Value = SoloNumeroDecimal(Me.TextBox9.Value)
End Sub

1 respuesta

Respuesta
1

H  o l a:

Ya revisé el código, lo probé y no tiene problemas. Envíame tu archivo para revisarlo.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Alonso Valero Juarez” y el título de esta pregunta.

Buenas tardes. Acabo de enviar el archivo.

H   o l a:

Ya realicé pruebas, y no tengo problemas.

Tal vez se está atorando al actualizar la base de datos de access, porque no pruebas si la conexión a la base de datos. Utiliza solamente los dato en la hoja de excel, para que revises el funcionamiento de los formulario; y después vuelves a activar la conexión a la BD.

No puedo hacerlo sin conexión ya que los primeros textbox se llenan con datos de access. Probé conectando desde cuando se abre el libro, pero sigue sin funcionar, también abriendo y cerrando conexión.

Solamente llena la hoja con datos, no los borres cuando inicia el userform.

Entonces prueba con esos datos.

Probé con lo que me dices, también la conexión. Ahora lo que sucede es que se sigue atorando el procedimiento hasta que paso el curso por el listbox, hecho esto se desbloquea la rutina, no logro entender el porque y aún así no es recomendable.

Ya probaste en otra máquina.

Puede ser tu versión de office, de windows, incluso hasta la memoria de tu computadora.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas