¿Te atreves a demostrar lo que sabes resolviendo alguno de estos
temas abiertos/no resueltos?

duda macro con alea...
 
Compartir:
Avisos
Vaciar todo

duda macro con aleatorios

jmloyal
(@jmloyal)
Nuevo miembro Registered

Buenas tardes,

Se me plantea un reto en Excel y os agradecería si me pudierais guiar en su resolución o recomendar material para aprender a resolverlo. En principio, debería ser programando una macro pero no sé cómo hacerlo. Os plantearé la cuestión base primero:

Tenemos varias celdas de aleatorios (concretamente 5 celdas: A1, A2, A3, A4 y A5). En otras 2 celdas (B1 y C1) tenemos fórmulas en las que intervienen todos esos valores. Y por último en la celda D1, una fórmula que depende de las dos fórmulas anteriores (B1 y C1) y, por tanto, de los aleatorios en último término.

¿Se podría acotar para que en las celdas de aleatorios (A1, A2, A3, A4 y A5) salgan siempre valores que hagan que en la celda D1 se cumpla una determinada condición (en concreto sea mayor que un número dado, por ejemplo, 1)?

Gracias por la ayuda

Citar
Topic starter Respondido : 14/04/2021 12:28 am
RET
 RET
(@ret)
Miembro Admin

@jmloyal,

No se muy bien que quieres decir con lo de los números aleatorios. Si los estás generando con la función ALEATORIO, supongo que sabrás que cada vez que la hoja cambia, vuelve a generar otro número diferente, con lo que, depende para que, la hoja no es muy "estable".

Sobre tu problema concreto, no veo forma de que los aleatorios se generen cumpliendo la condición de que después de operarlos y volver a operar su resultado, que depende además de cada uno de los aleatorios, se cumpla una determinada condición en el resultado final.

Lo único que se me ocurre es que generes un grupo de aleatorios y crees un ciclo con VBA que siga lanzando la creación de dichos aleatorios hasta que la condición que quieres sea cierta. Pero ojo con meterte en un bucle infinito. 

 

IMF_RET

https://InformaticaMuyFacil.com

ResponderCitar
Respondido : 14/04/2021 7:37 am
jmloyal
(@jmloyal)
Nuevo miembro Registered

@ret,

Efectivamente me refería a la función ALEATORIO.

Correcto, no lo había pensado así, pero me vale si se generan aleatorios hasta que se cumpla la condición y devuelve ese resultado. La pregunta es ¿cómo se haría eso? o ¿dónde puedo aprender a hacer eso?

Por otra parte, entiendo que la condición impuesta es realista y se produciría con cierta frecuencia por lo que no debería existir problema de bucle infinito. No obstante, muy buen apunte y si fuera el caso ¿habría manera de evitarlo?

Muchas gracias

ResponderCitar
Topic starter Respondido : 14/04/2021 6:37 pm
RET
 RET
(@ret)
Miembro Admin

@jmloyal,

 

Deberías hacerlo con una macro. Te doy unas cuantas notas:

- crea un ciclo Do Until hasta que se cumpla la condicion que quieres

- genera los numeros aleatorios con la funcion RND

- Introduce un contador dentro del ciclo de forma que si llegas a un numero determinado de iteraciones sin obtener el resultado, salga del ciclo

 

IMF_RET

https://InformaticaMuyFacil.com

 

ResponderCitar
Respondido : 15/04/2021 7:19 am
jmloyal
(@jmloyal)
Nuevo miembro Registered

@ret

Estupendo gracias. Tengo cierta idea de lo que me dices y creo que funcionaría pero no consigo materializarlo. ¿Me sabríais indicar dónde puede aprender a llevarlo a cabo? Gracias

ResponderCitar
Topic starter Respondido : 16/04/2021 8:14 pm
RET
 RET
(@ret)
Miembro Admin

@jmloyal,

 

Si tienes idea de programación, en cualquier lenguaje, no tendrás grandes problemas. Deberías empezar por buscar información de esas instrucciones en VBA.

Si no tienes idea de programación, te recomiendo que leas o busques algún texto general sobre VBA desde cero.

 

IMF_RET

https://InformaticaMuyFacil.com

ResponderCitar
Respondido : 16/04/2021 9:09 pm
jmloyal
(@jmloyal)
Nuevo miembro Registered

@ret

Perfecto. Eso haré. Gracias

ResponderCitar
Topic starter Respondido : 17/04/2021 11:30 pm

Dejar una respuesta

Nombre del autor

Correo electrónico del autor

Título *

 
Vista previa 0 revisiones Guardado