Combinaciones de open office calc

dfdfdfdf -  
yg_be Mensajes publicados 23437 Fecha de registro   Estado Colaborador Última intervención   -
Hola,

me gustaría generar todas las combinaciones de 5 números entre 50 en Excel, ¿podrías ayudarme?
No tengo idea de cómo hacerlo y no sé cómo crear o ejecutar macros.
Gracias.

6 respuestas

via55 Mensajes publicados 14387 Fecha de registro   Estado Miembro Última intervención   2 755
 
Hola

Aquí está
https://mon-partage.fr/f/UzoSeFy1/
Evidentemente, cuanto más larga sea la lista de números en la columna A, más tiempo tardará la macro en ejecutarse

Saludos
Vía

--
"La imaginación es más importante que el conocimiento." A. Einstein
1
GrigoriPerelman
 
Muchas gracias, sin embargo no puedo ejecutar la macro, ¿podría verificar que funciona bien? Gracias de antemano

y waw, bonito programa
0
yg_be Mensajes publicados 23437 Fecha de registro   Estado Colaborador Última intervención   1 588
 
Hola, tengo la impresión de que el código solo devuelve una parte de las soluciones, aquellas en las que los números (a, b, c, d, e) están ordenados según la lista.
0
via55 Mensajes publicados 14387 Fecha de registro   Estado Miembro Última intervención   2 755
 
Es más complicado
Voy a intentar mirar eso en mi tiempo libre

--
"La imaginación es más importante que el conocimiento." A. Einstein
1
GrigoriPerelman Mensajes publicados 7 Estado Miembro 19
 
Lo siento, no puedo ayudar con eso.
0
GrigoriPerelman Mensajes publicados 7 Estado Miembro 19
 
Sin embargo, no puedo ejecutar la macro, ¿está seguro de que funciona?
Y ¿podría decirme cómo ejecutarla?


Gracias de nuevo por su consideración.
0
GrigoriPerelman Mensajes publicados 7 Estado Miembro 19
 
Le agradecería mucho que me ayudara a hacer las pequeñas modificaciones de las que acabo de hablar


De verdad, gracias Via55
0
GrigoriPerelman Mensajes publicados 7 Estado Miembro 19
 
olviden mi solicitud de modificación, solo quiero hacer que el programa funcione pero no funciona.
0
yg_be Mensajes publicados 23437 Fecha de registro   Estado Colaborador Última intervención   1 588 > GrigoriPerelman Mensajes publicados 7 Estado Miembro
 
Solo tuve que abrir el archivo con Excel y luego presionar ctrl-t.
0
yg_be Mensajes publicados 23437 Fecha de registro   Estado Colaborador Última intervención   Ambassadeur 1 588
 
Hola, ¿qué tipo de resultado esperas?
0
dfdfdfdf
 
Me gustaría obtener una combinación de 5 números entre 50 ordenados por línea y sin repetición
ej
1 2 3 4 5
5 50 4 12 9
...

Eso hace más de 2 millones de posibilidades de combinaciones, pero no sé cómo obtenerlas en Excel, no tengo ni idea.
0
dfdfdfdf
 
Si alguien logra crear un programa fácilmente ejecutable, sería genial, aunque no tengo mucha fe en eso dado la dificultad de la tarea.
0
yg_be Mensajes publicados 23437 Fecha de registro   Estado Colaborador Última intervención   1 588 > dfdfdfdf
 

Private Sub kombi() Dim f As Worksheet, nlig As Long, i1 As Integer, i2 As Integer, i3 As Integer, i4 As Integer, i5 As Integer Set f = ThisWorkbook.Sheets("combi") nlig = 1 For i1 = 1 To 50 For i2 = 50 To i1 + 1 Step -1 For i3 = i2 + 1 To 50 For i4 = 50 To i3 + 1 Step -1 For i5 = i4 + 1 To 50 f.Cells(nlig, 1) = i1 f.Cells(nlig, 2) = i2 f.Cells(nlig, 3) = i3 f.Cells(nlig, 4) = i4 f.Cells(nlig, 5) = i5 nlig = nlig + 1 Next i5 Next i4 Next i3 Next i2 Next i1 End Sub 
0
dfdfdfdf
 
gracias, pero a partir de este código, ¿qué debo hacer para obtener mis combinaciones?
no sé nada de esto.
0
via55 Mensajes publicados 14387 Fecha de registro   Estado Miembro Última intervención   2 755
 
Hola

Aquí está:
https://mon-partage.fr/f/3RHZ5m9V/
Los resultados están en 3 columnas debido a que el número excede el número de celdas en altura de Excel

Saludos
Via

--
"La imaginación es más importante que el conocimiento." A. Einstein
0
dfdfdfdf
 
Gracias muchas pero ¿podrías ayudarme a poner un número por celda solamente, por favor?
0
yg_be Mensajes publicados 23437 Fecha de registro   Estado Colaborador Última intervención   1 588 > dfdfdfdf
 
¿Por qué haces este ejercicio?
0
dfdfdfdf
 
Deseo establecer este programa con el fin de adaptarlo para lanzamientos para un estudio que estoy realizando.
0
dfdfdfdf
 
Sin embargo, preferiría obtener un número por celda y no un sorteo por celda. ¿Podría modificar su programa a través del 55 de modo que cada celda contenga un número?
Atentamente
0
dfdfdfdf
 
No sé si mi solicitud es clara... en resumen, me gustaría hacer lo mismo que hizo via55, pero para una combinación, me gustaría tener cada uno de los números de la combinación en columnas diferentes.
0
via55 Mensajes publicados 14387 Fecha de registro   Estado Miembro Última intervención   2 755
 
Re

Reemplaza la macro por esta
Sub combi() y = 1 For a = 1 To 46 For b = a + 1 To 47 For c = b + 1 To 48 For d = c + 1 To 49 For e = d + 1 To 50 x = x + 1 If x > 1000000 Then x = 1: y = y + 7 Cells(x, y) = a Cells(x, y + 1) = b Cells(x, y + 2) = c Cells(x, y + 3) = d Cells(x, y + 4) = e Next Next Next Next Next End Sub


Desde otra hoja ejecuta la macro desde la cinta de opciones Desarrollador - Macros - combi - Ejecutar
y ten paciencia: la macro tarda varios minutos en ejecutarse debido a la cantidad de escrituras que debe realizar
0
dfdfdfdf
 
¿Podrías hacerlo? Aparece un mensaje de error cuando intento hacerlo.
Atentamente
0
dfdfdfdf
 
ah no, está bien, muchas gracias.
0
GrigoriPerelman
 
Hola, ¿podrías ayudarme a realizar un programa prácticamente similar pero con las siguientes restricciones:

1) Quiero proporcionar una lista de números

2) hacer una combinación de 5 cifras a partir de los que haya enlistado
-Sin repetición del mismo número en una combinación
generando únicamente combinaciones cuya suma de las 5 cifras esté entre 130 y 160
Y que estas combinaciones tengan una diferencia entre cada cifra que yo haya determinado, por ejemplo, tenemos una combinación a b c d e quiero que a+b+c+d+e = [130;160] y que b-a =[5;10], c-a=[12-14], d-a.., e-a.., etc.


gracias de antemano por el tiempo que puedas dedicarle y me imagino que será bastante largo

Atentamente
0
via55 Mensajes publicados 14387 Fecha de registro   Estado Miembro Última intervención   2 755
 
Hola

Sí, la macro funciona, pero según los números y las condiciones de mínimo y máximo ingresados, puede que no haya ninguna solución
Entonces, ¿qué quieres decir con que no logras ejecutar la macro? ¿No puedes lanzarla o no obtienes ningún resultado?

Es normal que las soluciones estén ordenadas según los números de la lista, ya que la macro los lee en orden para que ninguno sea olvidado, que un mismo número no se considere dos veces en la misma solución y que todas las combinaciones sean consideradas. Así que no entiendo por qué solo se devolvería una parte de las soluciones

--
"La imaginación es más importante que el conocimiento."    A. Einstein
0
yg_be Mensajes publicados 23437 Fecha de registro   Estado Colaborador Última intervención   1 588
 
por "diferencia entre cada número", entendí el valor absoluto de la diferencia.
0
GrigoriPerelman
 
nada sale
0
GrigoriPerelman
 
En resumen, este programa es realmente perfecto, pero me gustaría tener diferencias en valor absoluto y poder proporcionar listas de números diferentes para a, b, c, d y e

y que también se pueda ejecutar, por favor

¡Gracias de nuevo!
0
GrigoriPerelman Mensajes publicados 7 Estado Miembro 19
 
también me gustaría poder dar una lista de las diferencias posibles, por ejemplo
b-a puede valer 3;4;6;9;12 etc.
0