Excel - Copiar Ciertos Datos de una Excel a Otra Excel

Quiero copiar ciertos datos de una excel a otra excel al pulsar el boton.

Necesito que cuando estoy sobre una celda del libro origen, y pulso el botón, coja ciertas celdas relativas a la que me encuentro y las copie en otra hoja excel que tengo en ciertas celdas.

Poniendo un ejemplo tengo una excel donde tengo diferentes datos en columnas (idPedido, fechaPedido, Cantidad, Precio, Cliente, FechaEntrega, etc...), quiero que cuando estoy situada en un pedido concreto y le doy a generar, se me rellenen las celdas que quiero de mi hoja destino (ordenPedido) con datos de la primera.

Respuesta
1

Puedes enviarme tus 2 libros y con un ejemplo pintado de color amarillo me explicas qué datos quieres pasar del libro 1, en el libro 2 pones los dato que pasaste pero de color ver.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Marta Sanchez” y el título de esta pregunta.

Te anexo el código para copiar datos de la hoja de pedidos a la hoja de Orden de Trabajo.

Private Sub ComboBox1_Change()
'Por.Dante Amor
    Set h1 = Sheets("Pedidos")
    Set h2 = Sheets("OT Formato")
    Set h3 = Sheets("Orden de Trabajo")
    h3.Cells.Clear
    f = ComboBox1.ListIndex + 2
    h2.Cells.Copy h3.[A1]
    h3.[D8] = h1.Cells(f, "A")
    h3.[B11] = h1.Cells(f, "I")
    h3.[D11] = h1.Cells(f, "C")
    h3.[M11] = h1.Cells(f, "E")
    h3.[K8] = h1.Cells(f, "N")
    h3.[D12] = h1.Cells(f, "S")
    h3.Select
    Unload Me
    MsgBox "Orden de trabajo llenada", vbInformation
End Sub
Private Sub UserForm_Activate()
'Por.Dante Amor
    Set h1 = Sheets("Pedidos")
    For i = 2 To h1.Range("A" & Rows.Count).End(xlUp).Row
        ComboBox1.AddItem h1.Cells(i, "A")
    Next
End Sub

Saludos.Dante Amor

Si es lo que necesitas.

Te anexo la macro con la instrucción para generar un archivo nuevo por la OT.

Private Sub ComboBox1_Change()
'Por.Dante Amor
    Set h1 = Sheets("Pedidos")
    Set h2 = Sheets("OT Formato")
    Set h3 = Sheets("Orden de Trabajo")
    h3.Cells.Clear
    f = ComboBox1.ListIndex + 2
    h2.Cells.Copy h3.[A1]
    h3.[D8] = h1.Cells(f, "A")
    h3.[B11] = h1.Cells(f, "I")
    h3.[D11] = h1.Cells(f, "C")
    h3.[M11] = h1.Cells(f, "E")
    h3.[K8] = h1.Cells(f, "N")
    h3.[D12] = h1.Cells(f, "S")
    h3.Select
    h3.Copy
    Unload Me
    MsgBox "Orden de trabajo llenada", vbInformation
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas