Jump to content
Sign in to follow this  
L10NEL

Fórmula,función en macro para seleccionar aleatoriamente un número de una lista

Recommended Posts

Buenas, mis conocimientos sobre macros son muy pobres.

Lo que necesito es una macro que me seleccione de manera aleatoria uno de los números de una lista de 24 números.

Yo logré hacerlo sin macro con la siguiente fórmula:

=ELEGIR(ALEATORIO.ENTRE(1;24);"5";"4";"4";"3";"3";"2";"2";"2";"2";"1";"1";"1";"1";"1";"1";"1";"0";"0";"0";"0";"0";"0";"0";"0")

El problema es que cada vez que se actualiza la hoja o escribo algo en una celda ese número cambia.

Siguiendo:

-necesito a su vez que el número seleccionado aleatoriamente de esa lista se lea en la celda A1 y que en la celda A2 se lea otro número seleccionado de igual manera pero de otra lista de 24 números.

- luego que la macro compare el número que se escribió en A1 con el de A2 y que se cumplan ciertas condiciones:

a) SI A1=6 Y A2 es distinto a 5 o 6: valorV:escribir los números elegidos/dejar los que ya se escribieron; valorF: ir a paso siguiente "B)" que indiica más condición (SI anidados)

B) SI A2=6 y A1 es distinto a 5 o 6: valorV:escribir los números elegidos; valorF: c)

c) SI A1=5 y A2= 7 : valorV:escribir los números elegidos; valorF: d)

d) SI A2=5 y A1= 7: valorV:escribir los números elegidos; valorF: volver a "simular " es decir volver a seleccionar de sus respectivas listas y de manera aleatoria a ambos números -

Se entendió? Es para simular un resultado de tennis. Las bases de datos de 24 numeros son para separar por niveles a 2 jugadores. La lista de 24 núm de un jugador bueno tendrá en su mayoría seis y sietes y la de uno muy malo puede ser la lista que puse arriba que ni siquiera tiene un 6 o sea que ya de por sí no puede ni ganar.

Gracias gente, ojalá puedan ayudarme a escribir lo que necesito!

Share this post


Link to post
Share on other sites

Hola expertos.

Aprovechando la duda , por favor quisera que me ayuden a crear una macro que permita insetar automaticamente la formula que aparece en la celdas de a Columna "E1" y "F1" a lo largo de cada una de las columnas respectivamente,algo así muy parecido a lo establecido en la Columna"D",que dicho sea de paso copie del ejemplo y lo modifiqué.

Agradecido desde ya por su respuesta.

InsertarFormulas.zip

Share this post


Link to post
Share on other sites

A ver si lo he entendido:

Tu quieres obtener un resultado de un partido de tenis al mejor de 5 sets a partir de dos listas de 24 números, de forma aleatoria, una lista para cada jugador y que sean resultados válidos de 6-0 a 7-6 y viceversa.

¿ Es así ?

Ejemplo:

Si para el primer jugador obtengo un número menor que 5, al otro jugador le otorgo un 6 de forma automática.

Si para el primer jugador obtengo un 6, busco el 2º número, y si es menor que 5 le dejo ese número, si es 5 o 6, le dejo este número al segundo y le pongo un 7 al primero, en caso contrario respeto el nº obtenido para el 2º jugador.

....

....

Y así sucesivamente hasta que uno de los jugadores gane 3 sets.

Confírmamelo.

Share this post


Link to post
Share on other sites
A ver si lo he entendido:

Tu quieres obtener un resultado de un partido de tenis al mejor de 5 sets a partir de dos listas de 24 números, de forma aleatoria, una lista para cada jugador y que sean resultados válidos de 6-0 a 7-6 y viceversa.

¿ Es así ?

Si así es. Igualmente no es necesario que sea a 5 sets o 3 sets.

Lo ideal sería poder correr distintas macros, de a una por vez.

Primero una que escriba el resutlado del 1er set en celdas B1 y B2.

Luego correr una segunda macro con la misma funcion de la anterior pero programada para escribir en C1 y C2 para el 2do set.

Y por ejemplo si quiero que sea a 2 sets y 1 jguador ha ganando ambos entonces no sigo con el set 3 4 o 5.

Ejemplo:

Si para el primer jugador obtengo un número menor que 5, al otro jugador le otorgo un 6 de forma automática.

Si para el primer jugador obtengo un 6, busco el 2º número, y si es menor que 5 le dejo ese número, si es 5 o 6, le dejo este número al segundo y le pongo un 7 al primero, en caso contrario respeto el nº obtenido para el 2º jugador.

....

....

Y así sucesivamente hasta que uno de los jugadores gane 3 sets.

Confírmamelo.

No, esto no es así.

Explico de nuevo lo de las condiciones:

La idea es que para ambos jugadores se seleccione un número de los de su lista.

Ese número sale random... puede ser cualquiera. Lo mismo para el otro jugador.

Lo que decís sobre "a partir de un número de 1, al 2 se le otorga un número automaticamente" no es lo que deseo.

Te cuento ejemplos:

a)De la lista de 1 sale de manera azarosa el número 6 y de la de lista del player 2 sale el número 4. Como 6a4 es un resultado correcto, está bien y quiero que se escriban en las celdas B1 y B2.

B) De la lista de 1 sale el número 5, y de la de 2 el número 4... 5-4 no es un resultado correcto. Entonces se vuelve a simular: saco un nuevo número de 1 y uno nuevo de 2. Hasta que el resultado sea real.

c) sale un 7 de 1 y un 4 de 2: tampoco es real.

d) sale un 5 y un 7 : si es real. y viceversa. se escribe

e) sale un 7 y un 6 : si es real. y viceversa.

f) si sale un 3 para player 1 y un 2 para player2. se vuelve a buscar de manera random de entre los 24 números.

g) si sale un 3 y un 5 . al igual que en f) se tiene un resuktado incorrecto y se vuelve a buscar números hasta conseguir por ejemplo un 6a4.

h) si sale un

Cuando el resultado es incorrecto, no se otorgan números al otro para que sea correcto, sino que se vuelve a buscar un nuevo número aleatorio para ambos players de forma iterativa hasta alcanzar uno de los resultados reales.

La idea es que ambos números salgan de manera aleatorio y digamos que "simultáneamente".

Las listas lo que hacen es que los números (por más que sean elegidos al azar) tengan cierta tendencia.

Ejemplo de vida real: Player1: Federer. Player2: Nadal. Supongamos que son de nivel parejo..entonces tendrán listas similares. Pero si el Player 2 es un jugador "x" desconocido, luego su lista tendrá minoría de seis y siete y mayoría de números que lo llevarán a perder el set. Para eso son las listas. Y por esta razón no conviene adjudicar un

6 al player 2 cuando el player 1 no saca un 6 ya que lo llevaría a perder el set en el 50% de las veces suponiendo que la lista de 1 tiene mitad de 6.

Espero haber aclarado un par de cosas.

Ante cualquier duda pregunta.

Mil gracias por responder y ayudar

edit:

-resultados que SI sirven:

60 61 62 63 64 75 76 06 16 26 36 46 57 67

- resultados que NO sirven:

00 01 02 03 04 05 07 10 20 30 40 50 70

11 12 13 14 15 17 21 31 41 51 71

22 23 24 25 27 32 42 52 72

33 34 35 37 43 53 73

44 45 47 54 74

55 65 56

66

77

con esto en mente es que plantee las 4 condiciones(a,b,c,d) en el 1er post

Share this post


Link to post
Share on other sites

Hola:

Creo que he interpretado correctamente lo que buscas.

Me he tomado la libertad de hacer algún cambio funcional:

Al abrir el adjunto encontrarás 2 hojas, "Pronósticos" y "Listas"

En lugar de 2 listas de 24 números se podrán crear cualquier número de listas de cualquier cantidad de números cada una.

Estas listas de números deben ser registradas en la hoja "Listas" con un nombre. Aunque por estética se ha puesto como límite la columna 50, se puede informar cualquier cantidad de números hasta el total de columnas de la fila (16.384).

Por ejemplo, si creamos una lista con todos los sets jugados por Federer en los últimos 5 años( + de 750), la posibilidad de acertar el resultado de un set de Federer serán mas altas que con 24 números solamente. Evidentemente este ejemplo nos generaría 2 listas: "Federer" y "Contrario de Federer"

Una vez confeccionadas las listas, en la hoja "Pronósticos" se debe informar, como mínimo, LISTA 1 y LISTA 2, columnas E y G respectivamente, luego ir pulsando a voluntad el botón "Set".

Saludos

Pronosticador de resultados de tenis.zip

Share this post


Link to post
Share on other sites

Muy bueno como lo hiciste. Me gustó.

Sin embargo hay 2 cosas que encuentro con problemas:

1) No sé porque salen muchísimos 6a0 y 0a6...y salen totalmente encontra de las posibilidades estadísticas... tan solo teniendo 1/24 de que salga 1 cero para un jugador...si encima necesitás que el otro player saque un 6... las probabilidades son muy bajas y salen 4, 5 de esos resultados de forma consecutiva. Algo está mal en las fórmulas.

edit: recién probé sacando el 0 de las listas y siguen saliendo 6a0 (en la LISTA 1) =S-

Quizá al no limitar los números a 24 y extender esa lista, y si solo completo los 1ros 24 num, si sale aleatoriamente uno de afuera de esos se pone un 0... no lo sé, para mi convendría limitarlo a los 24 y probar. O por ahí se debe que en la función de resultados posibles al escribir 06 aparece solo 6 :S de esto no sé casi nada la verdad

2) Cambié el nombre de las listas,agregando la Lista0 por delante de todas así: LISTA 0, LISTA1, LISTA 2.....etc .......y me ha tirado errores y no me ejecutan los sets.

Me sería muy útil que la primer lista sea la cero. Y genial poder tener la cantidad de lista que quiera, mi ideal era hasta 15.

Gracias

Adjunto a continuación el excel que me diste con unas simulaciones que yo realicé.

Luego completé la hoja de listas (ATENCIÓN: cambié el nombre de las listas: inserté la LISTA CERO... así que no sé si seguirá andando la simulación, la inserté y no probé nada nuevo, es solo para mostrarte mi idea)

Y agregué 2 hojas más que estaría bueno si puedes ver mi idea completa de lo que quiero!

Pronosticador Tennis.rar

Share this post


Link to post
Share on other sites

A ver ahora que tal.

Sol hace falta informar SUPERFICIE, JUGADOR 1, JUGADOR 2 y pulsar SET las veces que quieras.

La lista de JUGADORES y el NIVEL se obtienen de la hoja "Niveles", y la LISTA de NÚMEROS se obtiene a partir del NIVEL, todo ello de forma automática.

Los pronósticos del jugador 1 se muestran en negro y los del jugador 2 en rojo.

Saludos

Pronosticador Tenis Plus.zip

Share this post


Link to post
Share on other sites

Increible! Pero real jaja! No sabía que se podía hacer todo eso.

Sos un genio

Igualmente hay un detalle que me preocupa todavía: en la lista 0 entre los 24 números no hay ningún 0, sin embargo he visto salir varios 6a0 o 0a6 en partidos de lista0 vs lista0 lo que es doblemente imposible!

A qué se debe esto? si en las listas no aparece el 0 entonces por qué sale un 0?

Se supone que el resultado sale de seleccionar al azar 1 de esos 24 números y si el cero no está entre esos números tengo que insister en saber a qué se debe! jaja

Por lo demás lo que has hecho es un perfecto desarrollo de mis intenciones. Estoy sorprendido y super agradecido a la vez.

Tengo más ideas para agregar pero siento que te robaría más tiempo del que ya te robé! A menos que te interese escuchar más sugerencias para agregar a ese excel!

Saludos

Share this post


Link to post
Share on other sites

Hola:

Me alegro que te haya gustado, la verdad es que ha quedado bonito.

Revisaré el tema de los 60.

Pues si tienes mas ideas sobre el tema, solo has de decirlo, ahí te dejo alguna de las mías:

Procesar todos los encuentros a la vez en lugar de 1 en 1:

Procesar todos los sets al mejor de 3 o 5 sets, de encuentro en encuentro y todos a la vez.

......

Saludos

Share this post


Link to post
Share on other sites

Dale gracias!.

Respecto a tu sugerencia, lo que podrías hacer es crear un botón como el de SET, pero llamado MATCH (uno para 3 y otro para 5 sets) que simule todo el partido..sin eliminar el de set. Entonces así estarán ambas opciones. Por que set a set da más suspenso a la simulación jaja!

Share this post


Link to post
Share on other sites

Pues nada, adelantándome al horario, he ido trabajando a lo largo del día en el tema.

Te dejo la versión Plus V2.

Permite, además de lo que ya hacía:

Procesar todos los partidos a 1, 3 o 5 sets, y además te indica el ganador, y si el resultado es contra pronóstico.

Creo que he arreglado el tema de los 60, era mas grave de lo que parecía. Todos los pronósticos eran erróneos.

Ya me contarás si se te ocurre algo mas.

Pronosticador Tenis Plus V2.zip

Share this post


Link to post
Share on other sites

Todavía mejor está quedando jaja!

Me gusta el formato que le diste.

Errores que me pareció notar:

-al tildar "todos los partidos" desaparecen los carteles de set1,2,3,4,5 y el contrapronóstico.

- el contrapronóstico no sé bien cómo funciona porque varias veces que simulé ganaba el de mayor nivel e igual se tildaba esa casilla.

- al simular jugador de igual nivel, o sea lista0 vs lista0, aún hay 6a0 o 0a6 :P !

y respecto a esto último y a los resultados que veo me gustaría preguntar cómo programaste los resultados de los sets a ver si viendo tu explicación puedo ver a qué se debe. Mi idea es que a partir de 24 números se seleccione 1 de esos al azar, si el cero no está en esos 24 por qué sale?

Share this post


Link to post
Share on other sites

Hola L1onel:

Bueno, ahora creo que ya está todo bien, lo del 60 en LISTA 0 era un paréntesis mal puesto en la fórmula.

He hecho una prueba con 200.000 pronósticos y ni un solo 60 con LISTA 0.

El ganador del partido se mostrará en color rojo cuando es CONTRA PRONÓSTICO.

He añadido un botón "BORRAR" para borrar los resultados a voluntad.

Saludos

Pronosticador Tenis Plus V2 II.zip

Share this post


Link to post
Share on other sites

Muy bueno!

No tuve chance de probarlo todavía pero lo vi por arriba.

Más tarde te comento nuevas ideas =P

Es espectacular tanto tu ayuda como tus aportes!

edit: siempre que clikeo en el botón de SET-PARTIDO, el cursor vuelve hacia arriba hacia la celda1... es decir que si estoy en la celda 100, pongo SET luego la pantalla sube a la celda1 y tengo que bajar en la página para ver el resultado que me tiró.

Share this post


Link to post
Share on other sites
edit: siempre que clikeo en el botón de SET-PARTIDO, el cursor vuelve hacia arriba hacia la celda1... es decir que si estoy en la celda 100, pongo SET luego la pantalla sube a la celda1 y tengo que bajar en la página para ver el resultado que me tiró.

Estaba hecho así. Ahora se quedará en la celda activa en el momento de pulsar el botón.

PD:

Yo me pondría este avatar:

[ATTACH]37877.vB[/ATTACH]

jajaja

Pronosticador Tenis Plus V2 II R.zip

post-46507-145877007224_thumb.jpg

Share this post


Link to post
Share on other sites

Recuerdas el último archivo que me creaste?

"Pronosticador Tenis Plus V2 II R".

Me gustaría si puedes cambiar el formato en que se simulan los partidos.

Actualmente es algo así:

Jugador1 vs Jugador2 -> resultado -> ganador

Y yo quiero que sea así:

Jugador1_____resultado______ganador

Jugador2

Otra cosa que me gustaría agregar es que no se simule todo en la misma columna.

Sino que haya varias columnas que lo permitan.

No se si se entendió bien xD

Te adjunto un archivo "cuadros" donde armé varios formatos parecidos a la vida real de los cuadros de tenis.

Puse varias opciones para que veas cuál es la más fácil de armar.

Yo creo que la más fácil es la 4. Por eso armé 3 modelos después (los de 250 500 1000-GS) que son los formatos básicos para simular cualquiera de los torneos existentes.

Creo que cuando lo veas vas a entender la idea.

Y lo que cambia es como te dije antes: la posición de jugador 1 y jugador 2 antes de simular; y el tener varias columnas de simulación según la ronda.

Ejemplo: en el archivo 250-500A, yo introduzco los nombres de Murray y abajo el de su rival (Kukushkin), inmediatamente aparecen sus niveles y listasdecomparación, voy arriba y clikeo el botón que me tira el resultado. Realizo lo mismo con los 2 de abajo. Luego yo escribo en la próxima ronda los nombres de Murray y el nuevo rival (Mello) y así sucesivamente simulo ronda a ronda.

Muchas gracias

cuadros.xls

Share this post


Link to post
Share on other sites

Está complicado, dame tiempo e iré dando señales de vida regularmente.

En el fondo lo que quieres es pronosticar el torneo entero a partir del cuadro del sorteo.

¿ Es así ?

.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

×
×
  • Create New...

Important Information

Privacy Policy