Ingresar datos con macros en excel

Estoy trabajando en una hoja de excel y en hoja1 necesito que se copien los datos a la hoja MOVIMIENTO pero que se oculte MOVIMIENTO luego de ingresar valores. Que no se pueda modificar si no hasta ingresar la clave

Tengo un boton en vbs para realizar esta tarea solo copia y no bloquea

1 Respuesta

Respuesta
1

H o l a:

Puedes pasar la información de la "Hoja1" a la hoja oculta "MOVIMIENTO", sin tener que mostrar la hoja "MOVIMIENTO", solamente tienes que hacer la referencia, por ejemplo:

Sub PasarDatos()
'Por.Dante Amor
    Set h1 = Sheets("Hoja1")
    Set h2 = Sheets("MOVIMIENTO")
    '
    'desproteger la hoja
    H2. Unprotect "abc"
    '
    'Pasar datos celda por celda
    h2.Range("D5") = h1.Range("E3")
    h2.Range("D6") = h1.Range("E4")
    '
    'Pasar dato copiando:
    H1. Range("E3"). Copy h2. Range("D5")
    H1. Range("E4:G6"). Copy h2. Range("D6")
    '
    'Pasar dato copiando como valores
    H1. Range("E3"). Copy: h2. Range("D5"). PasteSpecial xlValues
    H1. Range("E4:G6"). Copy: h2. Range("D6"). PasteSpecial xlValues
    '
    'proteger la hoja
    H2. Protect "abc"
    MsgBox "Datos copiados"
End Sub

Cambia en la macro "abc" por el password que desees.

Trata de adaptar las celdas que quieras copiar, si tienes dificultades, entonces pon la macro que tienes y le realizo las adecuaciones.


':)
S a l u d o s . D a n t e A m o r
':) Si es lo que necesitas. Recuerda valorar la respuesta. G r a c i a s.

¡Gracias! voy a probar y cualquier apoyo se lo hare ver

bendiciones

Buen día estimado Dante, agradezco el apoyo. El código del vb que estoy utilizando es este, desoculta hoja2 "MOVIMIENTO

Luego pega la información en la hoja2 "MOVIMIENTO y la vuelve a ocultar. lo que no logro realizar es proteger y desproger las 2 hojas (hoja1 hoja2 "MOVIMIENTO)

Sub Botón56_Haga_clic_en()
Sheets("Hoja1").Unprotect
Sheets("Hoja1").Unprotect Password:="123"
Range("B3:J3").Select
Selection.Copy
Sheets("MOVIMIENTO").Visible = True
Sheets("MOVIMIENTO").Select
Range("B3").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Select
ActiveSheet.Paste
Application.CutCopyMode = False
Sheets("MOVIMIENTO").Select
ActiveWindow.SelectedSheets.Visible = False
Sheets("Hoja1").Select
Range("B3:J3").Select
Selection.ClearContents
Range("B3").Select

End Sub

Con este logro que la información se coloque en la ultima fila con valor, agradezco el apoyo

BENDICIONES

Quedaría así:

Sub Botón56_Haga_clic_en()
    Sheets("Hoja1").Unprotect Password:="123"
    Sheets("MOVIMIENTO").Unprotect Password:="123"
    Sheets("Hoja1").Select
    Range("B3:J3").Select
    Selection.Copy
    Sheets("MOVIMIENTO").Visible = True
    Sheets("MOVIMIENTO").Select
    Range("B3").Select
    Selection.End(xlDown).Select
    ActiveCell.Offset(1, 0).Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    'Sheets("MOVIMIENTO").Select
    Sheets("MOVIMIENTO").Visible = False
    Sheets("Hoja1").Select
    Range("B3:J3").Select
    Selection.ClearContents
    Range("B3").Select
    Sheets("Hoja1").Protect Password:="123"
    Sheets("MOVIMIENTO").Protect Password:="123"
End Sub

' : )
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias
' : )

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas