Skip to main content

¿Cómo generar o listar todas las permutaciones posibles en Excel?

Author: Xiaoyang Last Modified: 2025-08-06

Por ejemplo, tengo tres caracteres XYZ, y ahora quiero enumerar 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 un número diferente de caracteres?

Generar o listar todas las permutaciones posibles basadas en caracteres con código VBA


arrow blue right bubble Generar o listar todas las permutaciones posibles basadas en caracteres con código VBA

El siguiente código VBA puede ayudarte a enumerar todas las permutaciones según tu número específico de letras; por favor, sigue los siguientes pasos:

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: Enumerar todas las permutaciones posibles en Excel

Sub GetString()
'Updateby Extendoffice
    Dim xStr As String
    Dim FRow As Long
    Dim xScreen As Boolean
    xScreen = Application.ScreenUpdating
    Application.ScreenUpdating = False
    xStr = Application.InputBox("Enter text to permute:", "Kutools for Excel", , , , , , 2)
    If Len(xStr) < 2 Then Exit Sub
    If Len(xStr) >= 8 Then
        MsgBox "Too many permutations!", vbInformation, "Kutools for Excel"
        Exit Sub
    Else
        ActiveSheet.Columns(1).Clear
        FRow = 1
        Call GetPermutation("", xStr, FRow)
    End If
    Application.ScreenUpdating = xScreen
End Sub
Sub GetPermutation(Str1 As String, Str2 As String, ByRef xRow As Long)
    Dim i As Integer, xLen As Integer
    xLen = Len(Str2)
    If xLen < 2 Then
        Range("A" & xRow) = Str1 & Str2
        xRow = xRow + 1
    Else
        For i = 1 To xLen
            Call GetPermutation(Str1 + Mid(Str2, i, 1), Left(Str2, i - 1) + Right(Str2, xLen - i), xRow)
        Next
    End If
End Sub

3. Luego presiona la tecla F5 para ejecutar este código, y aparecerá una ventana emergente que te recordará ingresar los caracteres que deseas listar en todas las permutaciones, ver captura de pantalla:

enter the characters that you want to list all permutations in the box

4. Después de ingresar los caracteres, haz clic en el botón Aceptar, y todas las permutaciones posibles se mostrarán en la columna A de la hoja de cálculo activa. Ver captura de pantalla:

all the possible permutations are displayed

Nota: Si la longitud de los caracteres ingresados es igual o mayor a 8 caracteres, este código no funcionará porque hay demasiadas permutaciones.

the entered character length is not equal or greater than 8 characters


Listar o generar todas las combinaciones posibles de múltiples columnas

Si necesitas generar todas las combinaciones posibles basadas en datos de múltiples columnas, tal vez no haya una buena manera de manejar esta tarea. Pero, la utilidad Listar Todas las Combinaciones de Kutools para Excel puede ayudarte a enumerar todas las combinaciones posibles rápidamente y fácilmente. ¡Haz clic para descargar Kutools para Excel!

list all combinations by kutools

Kutools para Excel: con más de 300 complementos útiles para Excel, prueba gratuita sin limitaciones durante 30 días. ¡Descarga y prueba gratis ahora!

Las mejores herramientas de productividad para Office

🤖 Asistente de IA de Kutools: 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 marcar duplicados | Eliminar filas en blanco | Combinar columnas o celdas sin perder datos | Redondear...
Super BUSCARV: Búsqueda con múltiples criterios | Búsqueda de múltiples valores | Búsqueda en varias hojas | Coincidencia difusa....
Lista desplegable avanzada: Crea rápidamente listas desplegables | Lista desplegable dependiente | Lista desplegable con selección múltiple....
Administrador de columnas: Agregar un número específico de columnas | Mover columnas | Cambiar la 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 libros y hojas de cálculo | Biblioteca de AutoTexto | Selector de fechas | Combinar Datos | Encriptar/Descifrar celdas | Enviar correo electrónico por lista | Super Filtro | Filtro especial (filtro negrita/cursiva/tachado...)...
Top15 conjuntos de herramientas:12 herramientas de texto (Agregar texto, Eliminar caracteres, ...) | 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 mucho más
Utiliza Kutools en tu idioma preferido: ¡compatible con Inglés, Español, Alemán, Francés, Chino y más de40 idiomas adicionales!

Impulsa al máximo tu dominio de Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para potenciar la productividad y ahorrar tiempo.Haz clic aquí para obtener la función que más necesitas...


Office Tab aporta una interfaz de pestañas a Office y hace tu trabajo mucho más sencillo

  • 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 vez de en nuevas ventanas.
  • ¡Aumenta tu productividad hasta un50% y reduce cientos de clics de ratón cada día!