Como corregir un código que relaciona 2 hojas de un mismo libro?
Dante, buenas noches. Vuelvo a consultar sobre un código que me enviaste en su momento y quisiera adaptarlo para una acción adicional
Tengo 2 hojas de un mismo libro y este código actualiza la fecha de un pedido de un cliente (hoja2), en la hoja1 (mismo cliente y pedido pero con explosión de artículos)
Private Sub CommandButton1_Click() Dim a As Variant, b As Variant, c As Variant Dim dic As Object, h1 As Worksheet, h2 As Worksheet, h3 As Worksheet Dim i As Long, j As Long, k As Long Application.ScreenUpdating = False Set h1 = Sheets("Hoja1") Set h2 = Sheets("Hoja2") '-------------------------------------------------------------------------------------------------------- a = h1.Range("A2:O" & h1.Range("C" & Rows.Count).End(3).Row).Value2 Set dic = CreateObject("Scripting.Dictionary") For i = 1 To UBound(a) dic(a(i, 3) & "|" & a(i, 15)) = a(i, 2) Next `------------------------------------------------------------------------------------------------------------ b = h2.Range("K3", h2.Range("K" & Rows.Count).End(3)).Value2 ReDim c(1 To UBound(b), 1 To 1) For i = 1 To UBound(b) c(i, 1) = dic(b(i, 1) & "|" & "1100") Next i h2.Range("J3").Resize(UBound(c)).Value = c Sheets("Hoja1").Select Application.ScreenUpdating = True End Sub
Hasta el momento, este código hace lo que mostraré con un ejemplo puntual
De (Hoja1) para el "cliente 1/1" que corresponde al dep 1100, lee la fecha en B3 y luego la actualiza en Hoja 2, tal como se muestra, en el rango (J14:J18) que corresponde al mismo "cliente 1/1"
Pues bien, quisiera además agregarle una sentencia que haga lo siguiente:
1. Leer celda I3 de Hoja1
2. Multiplique cada valor del rango (D14:D18) que se corresponde con el "cliente 1/1" por el cociente entre ... valor celda I3 Hoja1 (230) / valor celda H14 Hoja2 (500) y lo sobrescriba en el mismo rango
3. Luego valor celda H14 Hoja 2 (230) debe ser = al valor de la celda I3 Hoja1 (230)
4. Luego valor celda I14 Hoja 2 debe ser = SUMAPRODUCTO(D14:D18;(E14:E18) /1000 (7,69)
5. Finalmente valor celda N3 Hoja 1 (7,69) debe ser = valor celda I14 Hoja 2 (7,69)
Realmente deseo que este ejemplo paso a paso pueda ayudarte a comprender lo que estoy necesitando.