Macro para enviar datos a otra hoja

Una consulta como puedo hacer para que una macro haga lo siguiente:
Tengo un excel con 3 hojas (Fórmulas, Calculo y Resumen), en la hoja de "Formulas" tengo varias formulaciones de productos, en la hoja "Calculo" lo que hago en colocar la fecha, el código y cantidad del producto que voy a elaborar en el día y me sale los pesos de cada ingrediente que necesito, pero la pregunta es como hago para que mediante un botón esta información se vaya a la hoja "Resumen" en donde tengo una tabla con todos los ingredientes y me vaya colocando por cada día las cantidades que calcule, por supuesto cada uno en el ingrediente respectivo así como también copie los comentarios que se coloca. Te envío el archivo a tu correo para que me puedas ayudar...

1 respuesta

Respuesta
1
Que gusto saludarte otra vez.
-
La función -Macro- que asignarás a tu botón es la siguiente:
-
Sub EnviarAresumen()
Dim C As Range
    ' Carga valores
    With Worksheets("Calculo")
        FECHA = .Range("E2")
        InsumoA = .Range("E8")
        InsumoB = .Range("E9")
        InsumoC = .Range("E10")
        InsumoD = .Range("E11")
        InsumoE = .Range("E12")
        InsumoF = .Range("E13")
        InsumoG = .Range("E14")
    End With
    ' Localizar primer columna vacía
    For Each C In Worksheets("Resumen").Range("4:4")
        If C.Column <> 1 And C.Value = "" Then
            Exit For
        End If
    Next C
    ' Pega Valores
    C.Value = FECHA
    C.Offset(1, 0).Value = InsumoA
    C.Offset(2, 0).Value = InsumoB
    C.Offset(3, 0).Value = InsumoC
    C.Offset(4, 0).Value = InsumoD
    C.Offset(5, 0).Value = InsumoE
    C.Offset(6, 0).Value = InsumoF
    C.Offset(7, 0).Value = InsumoG
    Set C = Nothing
End Sub
-
Hola amigo experto
Creo que no me exprese bien la idea es que los datos de los ingredientes que se calculan vayan a la hoja Resumen según su descripción ya que cada producto se compone de diferentes ingredientes, es decir por ejemplo si coloco el producto 103 que tiene los insumos A, F y G entonces los datos deben ir en las filas 5 10 y 11 de la hoja Resumen y así con los demás productos... no se si me dejo entender... así como también se copien los comentarios que se colocan en las celdas... ojala me puedas ayudar con esto... muchas gracias
... con las mil disculpas, envíame nuevamente tu archivo.
No hay problema amigo ya te lo reenvíe
Gracias
Listo, Walter. Aquí está el SUB que asignarás a tu botón y realizará lo que pides:
-
Sub boton1()
' LOCALIZA COLUMNA VACÍA
Sheets("Resumen"). Activate
 For Each CELDA In Range("4:4")
  If Not CELDA.Column = 1 Then
   If CELDA.Value = "" Then Exit For
  End If
 Next CELDA
 ' Pasa la fecha
 CELDA.Value = Sheets("Calculo").Range("E2").Value
 ' Revisa el Calculo
 For Each INGREDIENTE In Sheets("Calculo").Range("C8:C12")
  ' Revisa el destino
  For Each INSUMO In Sheets("Resumen").Range("B5:B11")
   ' Destino encontrado
   If INSUMO.Value = INGREDIENTE.Value Then
    ' Copia celda con comentario
    INGREDIENTE.Offset(0, 2).Copy
    ' Pega comentario
    INSUMO. Offset(0, CELDA. Column - INSUMO. Column). PasteSpecial xlPasteComments
    ' Copia celda con cantidad
    INGREDIENTE.Offset(0, 1).Copy
    ' Pega Valores con formatos numéricos
    INSUMO. Offset(0, CELDA. Column - INSUMO. Column).PasteSpecial _
     xlPasteValuesAndNumberFormats
   End If
  Next INSUMO
 Next INGREDIENTE
End Sub
-

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas