Utilizar filas de una hoja de excel desde otra hoja

Tengo un código que estoy tratando de complementar para que realice lo siguiente: Necesito que cada vez que ingreso a mi aplicacion en excel y me logeo, este inserte una fila, copie el formato de la fila de abajo y en la nueva fila escribiré los valores necesarios como hora de ingreso, código, nombre, etc.

Todo esto lo hago con el siguiente código siempre y cuando lo haga estando en la misma hoja de registro, el problema es que necesito hacerlo desde otra hoja, ya que voy a ocultar el registro por obvias razones:

H11.Rows("19:19").Select

Selection.Insert Shift:=xlDown

H11.Rows("20:20").Select

Selection.Copy

H11.Rows("19:19").Select

Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

Application.CutCopyMode = False

Esto lo realiza siempre y cuando este sobre la Hoja11 de lo contrario me dice que no se puede realizar el procedimiento

1 respuesta

Respuesta
1

El problema es que estás seleccionando la hoja cuando está visible.

Tenés 2 opciones para resolverlo, siendo la recomendable la 2da:

1- Hacerla visible y al finalizar volverla a ocultar, con opción de no mostrar el movimiento de pantalla:

       Application.ScreenUpdating = False

       H11.visible = true

2- asignando nombre a tu hoja y trabajarla sin seleccionar

Set ho11 = Sheets("H11")  'en lugar de H11 coloca el nombre de tu hoja oculta
ho11.Rows("19:19").Insert Shift:=xlDown
ho11.Rows("20:20").Copy
ho11.Rows("19:19").PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

Con el método 1 me da el error '1004' en el tiempo de ejecución:

Error en el método Select de la clase Range.

Con el método 2, ningún problema! Todo bien!!!

Debe ser que no declaraste cuál es la hoja H11... fíjate cómo la declaré con la línea del SET (ajustando al nombre real de tu hoja).

Sdos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas