gracias por leer mi pregunta.
Estoy tratando de encontrar puntos de precio para varios tamaños de paquetes de productos. Tengo un rango de datos en la Hoja 1, A1: Z102, con la fila superior como masa de los paquetes (B1: Z1), y la primera columna (A2: A102) como el precio de venta. En la matriz he calculado los márgenes de beneficio (B2: Z102)
Estoy tratando de configurar "qué pasaría si" automáticamente en una hoja que me permite ingresar varios pesos "Hoja2! B1: B10", que seleccionará la columna correspondiente de pesos de paquete de "Hoja1! A2: Z2", luego haga que la función COINCIDIR con la fila más cercana de esa columna a mi "qué pasaría si" margen de beneficio "Hoja2! A1", y finalmente devolver en Hoja2, C1: C10, el precio de venta más cercano a ese margen de ganancia.
SHEET1
1lbs 2lbs 3lbs 4lbs
$1 $0.10 -$0.80 -$1.80% -$2.80
$2 $1.74 $0.74 -$0.26 -$1.26
$3 $2.61 $1.61 $0.61 -$0.39
$4 ... ... ... $0.47
...
SHEET2
$0.20 2lbs X
4lbs X
[Editar1] Entonces la función devolvería C1 = $ 2, y C2 = $ 4 en tres pasos iterativos (creo).
- Cell.Sheet2! B1.Value coincide con una columna idéntica en Sheet1 Row1: Devuelve la columna Y
- Para la Columna Y en la Hoja1, encuentre el valor más cercano al valor positivo de la Celda. Hoja2A1: Devuelve la Columna Y, Fila Z
- Para la Hoja1 Columna Y, el valor de retorno de la Fila Z en la Hoja 1 Columna 1, Fila Z. repita ese valor en la Hoja2 C1
- Repita 1-3 para B2 ... Bn
Me está costando mucho resolver cada paso:
- MATCH puede identificar la columna correcta
- No puedo encontrar la forma de anidar MATCH en "OFFSET" para buscar solo en la columna Y. He intentado INDEX MATCH, INDEX MATCH MATCH, LOOKUPs (V&H).
- Devuelve el valor Column1 en RowZ.
Me estoy dando cuenta de que esta podría ser una solución Macro, pero simplemente no sé cómo VBA:
Dim profit, lbs, cost, reflbs, refprofit As Range
Set cost = Worksheets("Sheet1").Range("$A$2", "$A$5")
Set profit = Worksheets("Sheet1").Range("$B$2", "$E$5")
Set lbs = Worksheets("Sheet1").Range("$B$1", "$E$1")
Set reflbs = Worksheets("Sheet2").Range("$B1")
Set refprofit = Worksheets("zTest").Range("$H$39")
For Each profitCell In profit
For Each costCell In cost
For Each lbsCell In lbs
If lbsCell.Value = reflbsCell.Value Then
Entonces no estoy seguro de cómo dirigir una búsqueda en la columna cuyo encabezado lb coincide con "reflbs", y luego puse un:
If profitCell.Value = refprofitCell.Value Then
Luego devuelve la fila Z para el partido, ¡y finalmente devuelve la fila Z, columna A, hoja1! en la Hoja2! C1.
¡Gracias un montón!