¿Como jalar datos de una celda por macros?

Tengo una duda con respecto a mi pregunta anterior:

Tengo este código que cada vez que presiono un botón, me genera la fecha en otra hoja automáticamente:

Sub Macro7()
Set h1 = Sheets("Fecha de Acta")
h1.Unprotect
u = h1.Range("C" & Rows.Count).End(xlUp).Row + 1
If u < 5 Then u = 5
h1.Cells(u, "C") = Date
h1.Protect

End Sub

Pero ahora quisiera que en vez de jalar la fecha del día, que jale la fecha que esta en otra hoja y a la vez que jale un dato de una celda en especial. No se si se podrá hacer todo eso en una sola macro. Si no se puede. Estaria bien que se haga en otra macro.

2 Respuestas

Respuesta
1

Te anexo la macro

Sub Macro7()
'****
'    Por.Dante Amor
'****
    Set h1 = Sheets("Fecha de Acta")
    Set h2 = Sheets("Datos")
    h1.Unprotect
    empre = h2.Cells(ActiveCell.Row, "C")
    fecha = h2.Cells(ActiveCell.Row, "D")
    u = h1.Range("C" & Rows.Count).End(xlUp).Row + 1
    If u < 5 Then u = 5
    h1.Cells(u, "B") = empre
    h1.Cells(u, "C") = fecha
    h1.Protect
End Sub
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

Esta bien la macros,

Pero en si, no me refería a la celda activa, sino a la fila seleccionada. Si te das cuenta hay un numero grande que concuerda con el numero de fila seleccionado. Si el numero grande dice 7, va a ser seleccionada la fila 7. Si dice 10, va a ser seleccionada la fila 10. Y quiero que capture los datos dependiendo de esa selección, no de la celda activa. Te dejo imágenes.

Te anexo la macro actualizada, cambia en la macro B2 por la celda donde tienes tu número grande.

Sub Macro7()
'****
'    Por.Dante Amor
'****
    Set h1 = Sheets("Fecha de Acta")
    Set h2 = Sheets("Datos")
    num = h2.Range("B2")
    If num = "" Then
        MsgBox "Falta el número"
        Exit Sub
    End If
    '
    Set b = h2.Range("B8:B" & Rows.Count).Find(num, lookat:=xlWhole)
    If b Is Nothing Then
        MsgBox "El número no existe"
        Exit Sub
    End If
    '
    h1.Unprotect
    u = h1.Range("B" & Rows.Count).End(xlUp).Row + 1
    If u < 5 Then u = 5
    h1.Cells(u, "B") = h2.Cells(b.Row, "C")
    h1.Cells(u, "C") = h2.Cells(b.Row, "D")
    h1.Protect
End Sub

sal u dos

Muchas Gracias !! En serio que eres experto en la materia.

Estimado,

Tengo un pequeño problema. Lo que pasa es que cada vez que agrego una fecha, por mas que sea de la misma empresa se va a la siguiente fila. Y yo quisiera que no pase eso.

Hay forma de hacer una validación que si es el mismo nombre de empresa la fecha se grabe en la misma fila ?

En la misma fila, ¿pero en cuál columna?

Con mucho gusto te ayudo con todas tus peticiones.

Crea una nueva pregunta en Todoexpertos.com dentro del tema de microsoft excel. En el desarrollo de la pregunta escribe: "para Dante Amor". Ahí me describes con detalle lo que necesitas.

Sal u dos

Respuesta
1

De acá quiero jalar los datos de fecha y "Nombre de Empresa" pero que este valla variando según la fila seleccionada.

Y que se muestre en otra hoja el resultado: Algo asi

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas