Skip to main content

Kutools para Office — Una Suite. Cinco Herramientas. Haz Más.

¿Cómo listar todas las combinaciones posibles de una sola columna en Excel?

Author Xiaoyang Last modified

Si necesitas obtener todas las combinaciones posibles a partir de los datos de una sola columna para lograr un resultado como el que se muestra en la siguiente captura de pantalla, ¿conoces algún método rápido para realizar esta tarea en Excel?

Listar todas las combinaciones posibles de una sola columna con fórmulas

Listar todas las combinaciones posibles de una sola columna con código VBA


Listar todas las combinaciones posibles de una sola columna con fórmulas

Las siguientes fórmulas de matriz pueden ayudarte a realizar este trabajo. Por favor, sigue estos pasos:

1. Primero, debes crear dos celdas auxiliares con fórmulas. En la celda C1, introduce la siguiente fórmula y pulsa las teclas Ctrl + Shift + Enter para obtener el resultado:

=MAX(LEN(A2:A6))
Nota: En esta fórmula, A2:A6 es la tabla unidimensional de celdas cuyas combinaciones deseas listar.

create the first helper formula

2. En la celda C2, introduce la siguiente fórmula y pulsa Ctrl + Shift + Enter para obtener el segundo resultado, como se muestra en la captura:

=CONCAT(A2:A6&REPT(" ",C2-LEN(A2:A6)))
Nota: En esta fórmula, A2:A6 es la tabla unidimensional de celdas cuyas combinaciones deseas listar, C2 es la celda que contiene la fórmula creada en el paso1.

create the second helper formula

3. Luego, copia y pega la siguiente fórmula en la celda D2 y pulsa Ctrl + Shift + Enter para obtener el primer resultado, como se muestra en la captura:

=IF(ROW()>2^(COUNTA(A$2:A$6)),"",TEXTJOIN(" + ",TRUE,IF(MID(TEXT(DEC2BIN(ROW()-1),REPT("0",COUNTA($A$2:$A$6))),ROW(INDIRECT("1:"&COUNTA($A$2:$A$6))),1)+0,TRIM(MID($C$3,(ROW(INDIRECT("1:"&COUNTA($A$2:$A$6)))-1)*$C$2+1,$C$2)),"")))
Nota: En esta fórmula, A2:A6 es la tabla unidimensional de celdas cuyas combinaciones deseas listar, C2 es la celda que contiene la fórmula creada en el paso1, C3 es la celda con la fórmula creada en el paso2, el carácter + es el delimitador que separa las combinaciones; puedes cambiarlo según tus necesidades.

enter a formula

4. Después, selecciona esta celda con la fórmula y arrastra el controlador de relleno hacia abajo hasta que aparezcan celdas en blanco. Ahora podrás ver todas las combinaciones de los datos de la columna especificada, como se muestra en la siguiente demostración:

Nota: Esta fórmula solo está disponible en Office2019,365 y versiones posteriores.
a screenshot of kutools for excel ai

Descubre la Magia de Excel con Kutools AI

  • Ejecución Inteligente: Realiza operaciones en celdas, analiza datos y crea gráficos, todo impulsado por comandos simples.
  • Fórmulas Personalizadas: Genera fórmulas adaptadas para optimizar tus flujos de trabajo.
  • Codificación VBA: Escribe e implementa código VBA sin esfuerzo.
  • Interpretación de Fórmulas: Comprende fórmulas complejas con facilidad.
  • Traducción de Texto: Supera las barreras del idioma dentro de tus hojas de cálculo.
Potencia tus capacidades de Excel con herramientas impulsadas por IA. ¡Descarga Ahora y experimenta una eficiencia como nunca antes!

Listar todas las combinaciones posibles de una sola columna con código VBA

Las fórmulas anteriores solo están disponibles en versiones recientes de Excel. Si utilizas una versión anterior, el siguiente código VBA puede ayudarte.

1. Pulsa las teclas Alt+ F11 al mismo tiempo para abrir la ventana de Microsoft Visual Basic for Applications.

2. Luego, haz clic en Insertar > Módulo, copia y pega el siguiente código VBA en la ventana.

Código VBA: Listar todas las combinaciones posibles de una sola columna

Sub ConnectArr()
'Updateby ExtendOffice
Dim xDValue As Variant
Dim xOutRg As Range
Dim xDictionary As Object
Dim xF As Long
Dim xChar As String
xDValue = Range("A2:A6").Value 'the data range
Set xOutRg = Range("C1") 'output range
xChar = "," 'separator
For xF = 1 To UBound(xDValue)
    Set xDictionary = CreateObject("Scripting.Dictionary")
    xDictionary(0) = "Sets of " & xF
    Call ConnectValue(xDValue, xDictionary, 0, xF, 0, "", xChar)
    xOutRg.Offset(0, xF - 1).Resize(xDictionary.Count).Value = WorksheetFunction.Transpose(xDictionary.Items)
    Set xDictionary = Nothing
Next
End Sub
Sub ConnectValue(ByRef pDValue, ByRef pDictionary, ByRef pLevel, ByVal pMaxLevel, ByVal pIndex, ByVal pValue, ByVal pChar)
Dim xF As Long
If pLevel = pMaxLevel Then
    pDictionary(pDictionary.Count + 1) = pValue
    Exit Sub
End If
For xF = pIndex + 1 To UBound(pDValue)
    If pValue = "" Then
        Call ConnectValue(pDValue, pDictionary, pLevel + 1, pMaxLevel, xF, pDValue(xF, 1), pChar)
    Else
        Call ConnectValue(pDValue, pDictionary, pLevel + 1, pMaxLevel, xF, pValue & pChar & pDValue(xF, 1), pChar)
    End If
Next
End Sub
Nota: En el código anterior:
  • A2:A6: es la tabla unidimensional de datos que deseas utilizar;
  • C1: es la celda de salida;
  • ,: el delimitador para separar las combinaciones.

3. Después, pulsa la tecla F5 para ejecutar este código. Todas las combinaciones de la columna se mostrarán como en la siguiente captura de pantalla:

vba code to get all combinations from the single column

Las mejores herramientas de productividad para Office

🤖 Kutools AI Aide: Revoluciona el análisis de datos basado en: Ejecución inteligente | Generar código | Crear fórmulas personalizadas | Analizar datos y generar gráficos | Invocar Funciones mejoradas
Funciones populares: Buscar, resaltar o identificar duplicados | Eliminar filas en blanco | Combinar columnas o celdas sin perder datos | Redondear...
Super BUSCARV: Búsqueda por varios criterios | Búsqueda por varios valores | Búsqueda en varias hojas | Coincidencia difusa....
Lista desplegable avanzada: Cree rápidamente una lista desplegable | Lista desplegable dependiente | Lista desplegable de selección múltiple....
Administrador de columnas: Agregar un número específico de columnas | Mover columnas | Alternar el estado de visibilidad de columnas ocultas | Comparar rangos y columnas...
Funciones destacadas: Cuadrícula de enfoque | Vista de diseño | Barra de fórmulas mejorada | Administrador de Libro de trabajo y Hoja de cálculo | Biblioteca de AutoTexto | Selector de fechas | Combinar Datos | Cifrar/Descifrar celdas | Enviar correo electrónico por lista | Super Filtro | Filtro especial (filtrar celdas con fuente en negrita/cursiva/tachado...)...
Los15 principales conjuntos de herramientas:12 herramientas de texto (Agregar texto, Eliminar caracteres específicos, ...) | Más de50 tipos de gráficos (Diagrama de Gantt, ...) | Más de40 fórmulas prácticas (Calcular edad basada en la fecha de nacimiento, ...) |19 herramientas de inserción (Insertar código QR, Insertar imagen desde ruta, ...) |12 herramientas de conversión (Convertir a palabras, Conversión de moneda, ...) |7 herramientas de combinar y dividir (Combinar filas avanzado, Dividir celdas, ...) ... y más
Utiliza Kutools en tu idioma preferido: admite inglés, español, alemán, francés, chino y más de40 idiomas adicionales.

Mejora tu dominio de 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 incorpora la interfaz de pestañas en 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 hacerlo en ventanas separadas.
  • ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!

Todos los complementos de Kutools. Un solo instalador

El paquete Kutools for Office agrupa complementos para Excel, Word, Outlook y PowerPoint junto con Office Tab Pro, ideal para equipos que trabajan en varias aplicaciones de Office.

Excel Word Outlook Tabs PowerPoint
  • Suite todo en uno: complementos para Excel, Word, Outlook y PowerPoint + Office Tab Pro
  • Un solo instalador, una licencia: configuración en minutos (compatible con MSI)
  • Mejor juntos: productividad optimizada en todas las aplicaciones de Office
  • Prueba completa de30 días: sin registro ni tarjeta de crédito
  • La mejor relación calidad-precio: ahorra en comparación con la compra individual de complementos