Datos de hoja1 a hoja2

Hola a todos! Necesito ayuda para realizar lo siguiente: la celda G20 de la hoja1 la quiero utilizar para introducir datos y éstos que se vayan posicionando en la hoja2 a partir de la celda B19, uno tras otro, hasta la celda B45.
¿Cómo lo puedo hacer?.
Gracias de antemano y un Saludo.

1 respuesta

Respuesta
1
Entrá al Editor de macros (con Alt+F11).
Seleccioná con doble clic, del panel a tu izquierda, el objeto HOJA1 y allí copiá esta rutina
Private Sub Worksheet_Change(ByVal Target As Range)
'se controla lo que ingreses en G20
If Target.Address = "$G$20" Then
'se busca cuál es la fila libre en col B, a partir de B19
If Sheets("Hoja2").Range("B19") = "" Then   'fila vacía
fila = 19
Else
fila = Sheets("Hoja2").Range("B18").End(xlDown).Row + 1
End If
'se controla si llegó al final del rango
If fila > 45 Then
MsgBox "Se llegó al final del rango - Este dato no se guardó"
Exit Sub
End If
'se coloca el dato ingresado en G20
Sheets("Hoja2").Cells(fila, 2) = Target.Value
'se posiciona nuevamente en G20
Target.Select
End If
End Sub
Pruébala y si responde a lo que necesits, no olvides finalizarla.
Hola Elsamatilde!
El macro funciona bien hasta que llega a la celda B20 de la hoja2, a partir de ahí, todos los datos se incluyen en esa celda ( B20 ) y no en las siguientes (b21, b22, etc.).
¿Qué debo de corregir o añadir para que se rellenen esas otras celdas hasta la B45 y que no se quede estancado en la B20?.
Gracias por la ayuda y el interés.
Escribila así entonces:
Private Sub Worksheet_Change(ByVal Target As Range)
'se controla lo que ingreses en G20
If Target.Address = "$G$20" Then
'se busca cuál es la fila libre en col B, entre B19 y B45
fila = Sheets("Hoja2").Range("B46").End(xlUp).Row + 1
If fila < 19 Then fila = 19
'se controla si llegó al final del rango
If fila >= 46 Then
MsgBox "Se llegó al final del rango - Este dato no se guardó"
Exit Sub
End If
'se coloca el dato ingresado en G20
Sheets("Hoja2").Cells(fila, 2) = Target.Value
'se posiciona nuevamente en G20
Target.Select
End If
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas