Error en macro que copia filas de una hoja a otra

24/02/2014 - 11:38 por arradi | Informe spam
¡ Hola !
Saludos cordiales!

Construí una macro para trasladar un rango de filas de una hoja a otra del mismi libro.
La macro pide que con un ImputBox se seleccione un rango de filas consecutivas ( en la hoja TAREAS) y copiarlas para luego pegarlas a partir de la fila de la celda activa de otra hoja (RUBRADO)
Al ejecutarla, a veces funciona bien, pero otras veces da este mensaje de error:
"Se ha producido el error 1004 en el tiempo de ejecución, error en el método paste de la clase worksheet"
Me podrían ayudar a solucionarlo, para que la macro fuera de funcionamiento fiable?

La macro:
Sub TrasladoRubros()
If ActiveSheet.Name = "TAREAS" Then
Set VariasFilas = Application.InputBox("Elige un rango de filas", Type:=8)
VariasFilas.Select
Selection.Copy
Sheets("RUBRADO").Select
ActiveSheet.Unprotect
ActiveCell.EntireRow.Select
ActiveSheet.Paste
ActiveSheet.Protect
Application.CutCopyMode = False
Else
MsgBox ("Ir a hoja TAREAS para ejecutar macro")
End If
End Sub

Desde ya agradecido.
Raúl
 

Leer las respuestas

#1 arradi
01/03/2014 - 16:34 | Informe spam
arradi escribió el 24/02/2014 11:38 :
¡ Hola !
Saludos cordiales!

Construí una macro para trasladar un rango de filas de una hoja a otra
del mismi libro.
La macro pide que con un ImputBox se seleccione un rango de filas consecutivas
( en la hoja TAREAS) y copiarlas para luego pegarlas a partir de la fila de la
celda activa de otra hoja (RUBRADO)
Al ejecutarla, a veces funciona bien, pero otras veces da este mensaje de
error:
"Se ha producido el error 1004 en el tiempo de ejecución, error en
el método paste de la clase worksheet"
Me podrían ayudar a solucionarlo, para que la macro fuera de
funcionamiento fiable?

La macro:
Sub TrasladoRubros()
If ActiveSheet.Name = "TAREAS" Then
Set VariasFilas = Application.InputBox("Elige un rango de filas",
Type:=8)
VariasFilas.Select
Selection.Copy
Sheets("RUBRADO").Select
ActiveSheet.Unprotect
ActiveCell.EntireRow.Select
ActiveSheet.Paste
ActiveSheet.Protect
Application.CutCopyMode = False
Else
MsgBox ("Ir a hoja TAREAS para ejecutar macro")
End If
End Sub

Desde ya agradecido.
Raúl


Gracias, funcionó perfecto!

Preguntas similares