Selección de datos variable en excel

Tengo que copiar datos que aumentan cada día ¿cómo puedo hacerlo para que los seleccione automáticamente y los pegue en otra hoja?

1 Respuesta

Respuesta
1

Se puede hacer una macro que seleccione, por ejemplo, desde la celda A2 hasta la última fila con datos de la columna A, los copie y los pegue en otra hoja.

Pero para hacer la macro, me tienes que decir lo siguiente:

  • Cómo se llama la hoja con datos
  • Cuál columna
  • Desde cuál fila
  • Cómo se llama la hoja destino
  • En cuál columna se van a pegar
  • Se van a pegar siempre en la misma celda de inicio o se van a pegar al final de los datos.

E spero tus comentarios en ese orden.

Hoja: BaseDatos

Columnas: N:N; B:B; C:C; D:D; E:E (se deben copiar en ese orden para ser pegadas en el mismo orden)

Fila: N2

Hoja destino: BasdeDatosTiempo

Columna de pegado: C:C (en el orden anteriormente mencionado)

Fila: C6

Se pegaran siempre desde la Fila C6

Te anexo la macro

Sub CopiaDatos()
'Por.Dante Amor
    Application.ScreenUpdating = False
    Set h1 = Sheets("BaseDatos")
    Set h2 = Sheets("BasdeDatosTiempo")
    c1 = Array("N", "B", "C", "D", "E")
    c2 = Array("C", "G")
    '
    u1 = h1.Range(c1(0) & Rows.Count).End(xlUp).Row
    u2 = h2.Range(c2(0) & Rows.Count).End(xlUp).Row
    If u2 < 6 Then u2 = 6
    h2.Range(c2(0) & "6:" & c2(1) & u2).ClearContents
    '
    For c = LBound(c1) To UBound(c1)
        h1.Range(c1(c) & 2 & ":" & c1(c) & u1).Copy
        col = Columns(c2(0)).Column + c
        h2.Cells(6, col).PasteSpecial xlValues
    Next
    Application.ScreenUpdating = True
    MsgBox "Fin"
End Sub

Sigue las Instrucciones para un botón y ejecutar la macro

  1. Abre tu libro de Excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. En el menú elige Insertar / Módulo
  4. En el panel del lado derecho copia la macro
  5. Ahora para crear un botón, puedes hacer lo siguiente:
  6. Inserta una imagen en tu libro, elige del menú Insertar / Imagen / Autoformas
  7. Elige una imagen y con el Mouse, dentro de tu hoja, presiona click y arrastra el Mouse para hacer grande la imagen.
  8. Una vez que insertaste la imagen en tu hoja, dale click derecho dentro de la imagen y selecciona: Tamaño y Propiedades. En la ventana que se abre selecciona la pestaña: Propiedades. Desmarca la opción “Imprimir Objeto”. Presiona “Cerrar”
  9. Vuelve a presionar click derecho dentro de la imagen y ahora selecciona: Asignar macro. Selecciona: CopiaDatos
  10. Aceptar.
  11. Para ejecutarla dale click a la imagen.

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

Muchas gracias. Era lo que necesitaba.

Corre bien la macro. Que tendría que agregar para se después se vuelva a la hoja BaseDatos celda A1.

Saludos.

Así:

Sub CopiaDatos()
'Por.Dante Amor
    Application.ScreenUpdating = False
    Set h1 = Sheets("BaseDatos")
    Set h2 = Sheets("BasdeDatosTiempo")
    c1 = Array("N", "B", "C", "D", "E")
    c2 = Array("C", "G")
    '
    u1 = h1.Range(c1(0) & Rows.Count).End(xlUp).Row
    u2 = h2.Range(c2(0) & Rows.Count).End(xlUp).Row
    If u2 < 6 Then u2 = 6
    h2.Range(c2(0) & "6:" & c2(1) & u2).ClearContents
    '
    For c = LBound(c1) To UBound(c1)
        h1.Range(c1(c) & 2 & ":" & c1(c) & u1).Copy
        col = Columns(c2(0)).Column + c
        h2.Cells(6, col).PasteSpecial xlValues
    Next
    h1.select
    range("A1").select
    Application.ScreenUpdating = True
    MsgBox "Fin"
End Sub

Estimado ya tengo los datos en la hoja BaseDatosTiempo ahora necesito que en la columna B se cree un numero consecutivo dependiendo de la cantidad de datos existentes y que en las columnas H e I se ejecuten dos fórmulas para todos los datos existentes.

Con mucho gusto te ayudo con todas tus peticiones.

Crea una nueva pregunta por cada petición, en Todoexpertos 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

Tengo entendido que debo cerrar la pregunta ¿como lo hago? no se hacerlo.

Saludos.

La pregunta la cierras cuando realizas la valoración. Ya valoraste y eso es todo. Sal u dos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas