Copiar la fila seleccionada a otra hoja de trabajo

Copiar la fila seleccionada a otra hoja de trabajo

Los hay por ej. 10 filas en una hoja de trabajo. Cuando el usuario hace clic en una fila, debería presentarse en otra hoja de trabajo. ¿Es posible? ¿Alguna ayuda para hacerlo?

EDITAR: Para aclarar: En una hoja se presentan, por ejemplo, las calificaciones de los exámenes de los estudiantes del primer año: John 10 8 10 7 Nick 8 9 8 9 Maria 7 8 8 7

En la segunda hoja hay información de los estudiantes del segundo año: John 9 9 10 8 Nick 8 8 9 7 Maria 7 6 8 8

Quiero entregar algún tipo de certificado final para el estudiante, por lo que la información resumida debe presentarse en la tercera hoja. No necesito hacer clic. Podría haber una lista desplegable en la tercera hoja.

Respuesta1

Esta sería una macro rápida para hacerlo:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  With Sheet2.UsedRange
    'note, this won't copy to row 1, leaving headers intact.
    Target.EntireRow.Copy (.Rows(.Rows.Count + 1).EntireRow)
  End With
End Sub

Sin embargo, usarlo con cambio de selección puede ser bastante molesto, porque se ejecutará cada vez que seleccione otra celda, por lo que es posible que desee pensar en usar algún tipo de verificación inversa u otra forma de ejecutar esto.

Tal vez simplemente use el código como una macro personalizada y asigne una tecla rápida.

Editar

Cuando quieras hacer esto solo con fórmulas, tendrás que configurar cada celda de tu fila de destino con una fórmula. No conozco ninguna forma de cambiar una celda directamente usando una fórmula, excepto, por supuesto, la celda con la fórmula.

Mi sugerencia entonces sería usar ocho rangos con nombre, BUSCARV o COINCIDIR.

Un rango con nombre podría acercarse bastante a lo que usted indicó:

En la hoja de destino:

A1=14

A2=MYRANGE
B2=MYRANGE
.
.
.
IV2=MYRANGE

MYRANGE se define como

=INDIRECT("SourceSheet!"&DestSheet!$A$1&":"&DestSheet!$A$1)

Esto le daría la fila 14 de la hoja de destino. Esto también funcionará, si A1 está en SourceSheet, simplemente edítelo en consecuencia.

Con la misma facilidad puedes usar dos rangos con nombre:

MYDESTRANGE=SourceSheet!MYSOURCERANGE

Al cambiar MYSOURCERANGE a otra fila, cambiará efectivamente la fuente de MYDESTRANGE, mientras usa la misma fila que antes.

información relacionada