¿Cómo generar todas las combinaciones de 3 o múltiples columnas en Excel?
Supongamos que tengo 3 columnas de datos y 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?
Generar todas las combinaciones basadas en 3 columnas de datos usando una fórmula
Generar todas las combinaciones basadas en 3 o múltiples columnas de datos usando código VBA
Generar todas las combinaciones basadas en 3 columnas de datos usando una fórmula
La siguiente fórmula larga puede ayudar a listar todas las combinaciones de 3 columnas; por favor, sigue estos pasos:
1. Haz clic en una celda donde deseas obtener el resultado, y luego copia y pega la siguiente fórmula en ella:
Nota: En esta fórmula: A2:A4, B2:B6, C2:C5 son los rangos de datos que deseas usar.
2. Luego, arrastra el controlador de relleno hacia abajo hasta que aparezcan celdas en blanco, lo que significa que se han listado todas las combinaciones de las 3 columnas, ver captura de pantalla:
Generar todas las combinaciones basadas en 3 o múltiples columnas de datos usando código VBA
La fórmula larga anterior puede ser algo difícil de usar; si hay múltiples columnas de datos que necesitan usarse, será complicado modificarla. Aquí te presento un código VBA para manejarlo rápidamente.
1. Mantén presionadas las teclas ALT + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.
2. Haz clic en Insertar > Módulo, y pega el siguiente código en la Ventana del 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:A4") 'First column data
Set xDRg2 = Range("B2:B6") 'Second column data
Set xDRg3 = Range("C2:C5") '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
Nota: En el código anterior, A2:A4, B2:B6, C2:C5 son los rangos de datos que deseas usar, E2 es la celda de salida donde quieres ubicar los resultados. Si deseas obtener todas las combinaciones de más columnas, cambia y agrega otros parámetros al código según sea necesario.
3. Luego, presiona la tecla F5 para ejecutar este código, y todas las combinaciones de las 3 o múltiples columnas se generarán de inmediato, ver captura de pantalla:
Generar todas las combinaciones basadas en 3 o múltiples columnas de datos usando una función impresionante
Si tienes Kutools para Excel, con su poderosa función Listar Todas las Combinaciones, puedes listar todas las combinaciones de múltiples columnas rápidamente y fácilmente.
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, especifica los datos de las columnas y los separadores para listar las combinaciones como se muestra en la siguiente captura de pantalla:
3. Después de configurar los datos y el separador, haz clic en el botón Aceptar; en el siguiente cuadro de diálogo, selecciona una celda para ubicar el resultado, ver captura de pantalla:
4. Luego, haz clic en el botón Aceptar, y todas las combinaciones se generarán inmediatamente 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
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!