Listar los valores de una columna cuya suma da X

En una columna A tengo una serie de valores numéricos positivos que pueden tomar valores entre 1 y 900. El total de valores es variable.
Dado un número X<900 (pongamos que está en la celda B1), necesito encontrar la combinación de los valores de la columna A, que sumados den X, o el inmediátamente superior a X o el inmediátamente inferior. Y que éstos se muestren por ejemplo en las columna C, DE, E
Con los valores de la columna A sólo puedo sumar y no puedo coger 2 veces el mismo valor.
¿Qué fórmula o macro puedo emplear?
Un ejemplo:
A B C D E
243 900 243 300 299
245 675 300 300
246 301 300
246
299
300
300
300
301
302
675

1 Respuesta

Respuesta
1
Yo tengo escrita una función para encontrar los sumandos de una suma dada, mira si te sirve: http://www.jrgc.es/ejemplos/EncontrarSumandos.xls
La función sirve si el número de sumandos es razonable (hasta 24 más o menos). Si son más, los tiempos requeridos para calcular todas las combinaciones pueden llegar a ser muy largos.
Muchísimas gracias por compartir esta función. Es realmente buena.
Sin embargo no me funciona corrctamente (o yo no la entiendo bien).
He rellenado con valores las celdas A1 a A23 (todos numéricos y positivos, comprendidos entre el 1 y el 900). En las celdas F1 a F9 no he puesto ninguno.
He introducido el número 900 para calcular, pero en lugar de usar todos los valores (de hecho el A21 es en sí 900) parece que sólo usa los que encuentra entre A1 y A9 más los de F1 a F9.
¿Tendría qué modificar algo en tu código?
Saludos.
En el libro de ejemplo la llamada a la función se hace con dos rangos de celdas (A1:A9 y F1:F9) para demostrar que la función admite más de un rango, pero lo más normal es que esto no sea necesario.
Si los sumandos están en A1:A23, la llamada a la función para encontrar 900 sería:
=ESS(900;VERDADERO;A1:A23)
Sustituyendo VERDADERO por FALSO si se desease el valor más próximo si no se encuentra el exacto.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas