problema en office 2019: macro: error 70 permiso denegado

Anónimas
2022-12-15T14:23:56+00:00

hice un formukario con una list box, 2 textbox y un boton buscar, para extraer de una hoja (tabla) datos entre una fecha y otra, la cual me arroja ese aviso error. este es el codigo del mismo

Private Sub BUSCAR_F_Click()

Application.ScreenUpdating = False 

Dim fila As Long, I As Long 

fila = Hoja7.Range("A" & Rows.Count).End(xlUp).Row 

For I = 10 To fila 

(Aqui marca error 13)

    'fecha1 = CDate(F\_INICIAL) 

    'fecha2 = CDate(F\_FINAL) 

    'If fecha2 = Empty Or fecha1 = Empty Then 

'MsgBox ("Debe ingresar datos para consulta entre rango de fechas"), vbCritical, «AVISO» 

'Exit Sub

'End If 

'If fecha2 < fecha1 Then 

'MsgBox ("La fecha final no puede ser menor a la fecha inicial"), vbCritical, «AVISO» 

'Exit Sub

'End If 

    If CDate(Hoja7.Cells(I, 1)) >= F\_INICIAL And CDate(Hoja7.Cells(I, 1)) <= F\_FINAL Then 

With PANEL\_P 

(Aqui marca error 70)

    .AddItem 

    .List(.ListCount = I, 0) = Format(Hoja7.Cells(I, 1), "DD/MM/YYYY") 

    .List(.ListCount = I, 1) = Hoja7.Cells(I, 2) 

    .List(.ListCount = I, 2) = Hoja7.Cells(I, 3) 

    .List(.ListCount = I, 3) = Hoja7.Cells(I, 4) 

    .List(.ListCount = I, 4) = Hoja7.Cells(I, 5) 

    .List(.ListCount = I, 5) = Hoja7.Cells(I, 6) 

    .List(.ListCount = I, 6) = Hoja7.Cells(I, 7) 

End With 

End If 

Next I 

End Sub


Private Sub CERRAR_Click()

Application.ScreenUpdating = False

Unload FECHAV2

End Sub


Private Sub UserForm_Activate()

Application.ScreenUpdating = False 

Me.PANEL\_P.RowSource = "TURNO" 

Me.PANEL\_P.ColumnCount = 7 

End Sub

Microsoft 365 y Microsoft Office | Excel | Otros | Otros

Pregunta bloqueada. Esta pregunta se migró desde la Comunidad de Soporte técnico de Microsoft. Puede votar si es útil, pero no puede agregar comentarios o respuestas ni seguir la pregunta.

0 comentarios No hay comentarios
{count} voto

2 respuestas

Ordenar por: Muy útil
  1. Anónimas
    2022-12-17T23:23:28+00:00

    Hola Rodolfo:

    Si cargas el listbox con la propiedad .RowSource

    Me.PANEL_P.RowSource = "TURNO"

    No puedes agregar datos al listbox utilizando el método .add

    Primero debes "eliminar" lo cargado en el listbox de la siguiente manera:

    Después de esta línea:

    fila = Hoja7.Range("A" & Rows.Count).End(xlUp).Row

    Pones esta línea:

    PANEL_P.RowSource = ""

    Listo, ya puedes utilizar el método .Add

    Saludos Dante Amor

    Visita: Excel y Macros

    2 personas han encontrado útil esta respuesta.
    0 comentarios No hay comentarios
  2. Anónimas
    2022-12-18T10:29:02+00:00

    El error 13 es debido a que le estás pasando un dato que no es del tipo que espera.

    En tu caso F_INICIAL y F_FINAL deben ser datos que Excel reconozca como fechas (no texto con apariencia de fecha para el usuario pero no para Excel).

    En cualquier caso, lo que quieres hacer lo puede hacer Excel, filtrando o mediante una tabla dinámica. Y lo hará mejor que tú.

    1 persona ha encontrado útil esta respuesta.
    0 comentarios No hay comentarios