En Excel me da el error 1004

Los rangos se seleccionan con una macro el la que he utilizado las tecla Control+Shift con Flechas a la derecha y Flechas hacia abajo ya que dependiendo del articulo puede tener mas o menos filas y el error se produce al tener una de las hojas sin rangos por no haber pedido nadie ese articulo

me da el error 1004 y dice no se puede desplazar objetos fuera de la hoja y la depurar se pone en amarillo esto  Selection.Insert Shift:=xlDown

1

1 respuesta

Respuesta
1

H o l a:

Puedes poner la macro completa.

También pon una imagen de tu hoja de excel con los datos que tienes cuando se produce el error, procura que en la imagen se vean las filas y las columnas de excel.

En cuál celda tienes que poner el cursor antes de ejecutar la macro.

Y por último, explícame cuál es el objetivo de seleccionar el rango, lo vas a copiar, a poner color, ¿?

Hola te mado un archivo que como veras tiene una B.D. que en su día constara de unos 2000 tiene 4 hojas como opciones tiene una consulta y un listado, como veras cuando le doy a las 4 opciones  si en una tiene solo un registro o ninguno es cuando me da el error si tiene dos o más no tiene problema en listarlos a la hoja listado con el fin de imprimirlo posterior mente

Me puedes enviar un correo donde enviarte el archivo, el mio es [email protected]

Gracias

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Jose Diaz” y el título de esta pregunta.

Enviado el archivo

gracias

Te anexo la macro actualizada:

Sub LISTAR()
'Por.Dante Amor
    hojas = Array("1ª OPCION", "2ª OPCION", "3ª OPCION", "4ª OPCION")
    Set h1 = Sheets("LISTADO ")
    u = h1.Range("B" & Rows.Count).End(xlUp).Row
    If u < 2 Then u = 2
    h1.Range("A2:I" & u).ClearContents
    '
    For i = LBound(hojas) To UBound(hojas)
        Set h = Sheets(hojas(i))
        u = h.Range("B" & Rows.Count).End(xlUp).Row
        u1 = h1.Range("B" & Rows.Count).End(xlUp).Row + 1
        If u < 2 Then u = 2
        h.Range("A2:I" & u).Copy h1.Range("A" & u1)
    Next
    h1.Select
    MsgBox "Listado terminado"
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas