¿Cómo enumerar o generar todas las combinaciones posibles en Excel?

Al trabajar con datos en Excel, es posible que te encuentres en situaciones donde necesites generar todas las combinaciones posibles a partir de varias listas. Por ejemplo, si tienes dos o más columnas de valores, enumerar manualmente cada combinación puede ser tedioso y propenso a errores, especialmente a medida que aumenta el número de valores. En esta guía, exploraremos diferentes técnicas para enumerar o generar rápidamente todas las combinaciones posibles en Excel.
Enumerar o generar todas las combinaciones posibles de dos listas con fórmula
Enumerar o generar todas las combinaciones posibles de tres o más listas con código VBA
Enumerar o generar todas las combinaciones posibles de múltiples listas con Kutools para Excel
Enumerar o generar todas las combinaciones posibles de dos listas con fórmula
La siguiente fórmula larga puede ayudarte a enumerar rápidamente todas las combinaciones posibles de los valores de dos listas; sigue estos pasos:
1. Introduce o copia la siguiente fórmula en una celda en blanco; en este caso, la introduciré en la celda D2, y luego presiona la tecla "Enter" para obtener el resultado, como se muestra en la captura de pantalla:
=IF(ROW()-ROW($D$2)+1>COUNTA($A$2:$A$5)*COUNTA($B$2:$B$4),"",INDEX($A$2:$A$5,INT((ROW()-ROW($D$2))/COUNTA($B$2:$B$4)+1))&"-"&INDEX($B$2:$B$4,MOD(ROW()-ROW($D$2),COUNTA($B$2:$B$4))+1))
2. Luego selecciona la celda D2 y arrastra el controlador de relleno hacia abajo hasta que aparezcan celdas en blanco. Todas las combinaciones posibles se enumerarán en función de las dos listas de valores. Ver captura de pantalla:
Enumerar o generar todas las combinaciones posibles de tres o más listas con código VBA
Si la fórmula anterior parece difícil de aplicar, especialmente con múltiples columnas de datos, modificarla puede ser complicado. En tales casos, un código VBA proporciona una solución más rápida y flexible.
1. Mantén presionadas las teclas "ALT + F11" para abrir la ventana "Microsoft Visual Basic para Aplicaciones".
2. Haz clic en "Insertar" > "Módulo", y pega el siguiente código en la ventana "Módulo".
Código VBA: Generar todas las combinaciones de 3 o múltiples columnas
Sub ListAllCombinations()
'Updateby Extendoffice
Dim xDRg1, xDRg2, xDRg3 As Range
Dim xRg As Range
Dim xStr As String
Dim xFN1, xFN2, xFN3 As Integer
Dim xSV1, xSV2, xSV3 As String
Set xDRg1 = Range("A2:A5") 'First column data
Set xDRg2 = Range("B2:B4") 'Second column data
Set xDRg3 = Range("C2:C4") 'Third column data
xStr = "-" 'Separator
Set xRg = Range("E2") 'Output cell
For xFN1 = 1 To xDRg1.Count
xSV1 = xDRg1.Item(xFN1).Text
For xFN2 = 1 To xDRg2.Count
xSV2 = xDRg2.Item(xFN2).Text
For xFN3 = 1 To xDRg3.Count
xSV3 = xDRg3.Item(xFN3).Text
xRg.Value = xSV1 & xStr & xSV2 & xStr & xSV3
Set xRg = xRg.Offset(1, 0)
Next
Next
Next
End Sub
3. Luego, presiona la tecla "F5" para ejecutar este código, y todas las combinaciones de las 3 columnas se generarán de una vez, como se muestra en la captura de pantalla:
Enumerar o generar todas las combinaciones posibles de múltiples listas con Kutools para Excel
Si hay múltiples listas de valores que necesitan tener todas las combinaciones posibles enumeradas, tal vez te resulte difícil modificar el código. Aquí, puedo recomendar una herramienta poderosa: "Kutools para Excel", que contiene una característica práctica "Listar todas las combinaciones" que puede enumerar rápidamente todas las combinaciones posibles basadas en las listas de datos proporcionadas.
1. Haz clic en "Kutools" > "Insertar" > "Listar todas las combinaciones", ver captura de pantalla:
2. En el cuadro de diálogo "Listar todas las combinaciones", realiza las operaciones como se muestra a continuación:
3. Luego, todos los valores especificados y separadores se habrán enumerado en el cuadro de diálogo, ver captura de pantalla:
4. Y luego haz clic en el botón "Aceptar", y aparecerá un cuadro de aviso para recordarte que selecciones una celda para mostrar el resultado, ver captura de pantalla:
5. Haz clic en "Aceptar", y todas las combinaciones posibles basadas en las listas dadas se habrán generado en la hoja de cálculo, como se muestra en la siguiente captura de pantalla:
Kutools para Excel - Potencia Excel con más de 300 herramientas esenciales. ¡Disfruta de funciones de IA gratis permanentemente! Consíguelo ahora
Más artículos relacionados:
- Generar todas las combinaciones de 3 o múltiples columnas
- Supongamos que tengo 3 columnas de datos, ahora quiero generar o listar todas las combinaciones de los datos en estas 3 columnas, como se muestra en la siguiente captura de pantalla. ¿Tienes algún buen método para resolver esta tarea en Excel?
- Encontrar todas las combinaciones que suman un valor dado
- Por ejemplo, tengo la siguiente lista de números, y ahora quiero saber qué combinación de números en la lista suma 480, como se muestra en la siguiente captura de pantalla, puedes ver que hay cinco grupos de combinaciones posibles que suman 480, como 300+60+120, 300+60+40+80, etc. En este artículo, hablaré sobre algunos métodos para encontrar qué celdas suman un valor específico en Excel.
- Generar o listar todas las permutaciones posibles
- Por ejemplo, tengo tres caracteres XYZ, ahora quiero listar todas las permutaciones posibles basadas en estos tres caracteres para obtener seis resultados diferentes como este: XYZ, XZY, YXZ, YZX, ZXY y ZYX. En Excel, ¿cómo podrías generar rápidamente o listar todas las permutaciones basadas en diferentes números de caracteres?
- Generar una lista de todas las combinaciones posibles de 4 dígitos
- En algunos casos, es posible que necesitemos generar una lista de todas las combinaciones posibles de 4 dígitos del número 0 al 9, lo que significa generar una lista de 0000, 0001, 0002…9999. Para resolver rápidamente la tarea de la lista en Excel, te presento algunos trucos.
Las mejores herramientas de productividad para Office
Potencia tus habilidades en Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...
Office Tab lleva la interfaz de pestañas a Office y facilita mucho tu trabajo
- Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abre y crea varios documentos en nuevas pestañas de la misma ventana, en lugar de nuevas ventanas.
- ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!