Combinaciones de open office calc
dfdfdfdf
-
yg_be Mensajes publicados 23437 Fecha de registro Estado Colaborador Última intervención -
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.
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
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
Voy a intentar mirar eso en mi tiempo libre
--
"La imaginación es más importante que el conocimiento." A. Einstein
yg_be
Mensajes publicados
23437
Fecha de registro
Estado
Colaborador
Última intervención
Ambassadeur
1 588
Hola, ¿qué tipo de resultado esperas?
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
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
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
Re
Reemplaza la macro por esta
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
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
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
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
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
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
y waw, bonito programa