Cómo Generar Todas Las Combinaciones (Permutar) en Excel

Written by

Editorial Team

Reviewed by

Laura Tsitlidze

Translated by

Dennis Madrid

Last updated on mayo 2, 2023

Este tutorial muestra cómo generar todas las Combinaciones (Permutaciones) en Excel.

 

Cómo Generar Todas Las Combinaciones Permutaciones en Excel

Generar Todas las Permutaciones

Con una macro VBA, puede generar todas las permutaciones posibles de un determinado conjunto de caracteres. Todo lo que tiene que hacer es crear un pequeño fragmento de código e introducir los caracteres de entrada.

  1. En la cinta de opciones, vaya a Programador > Visual Basic. Si no tienes disponible esta pestaña, averigua cómo añadir la pestaña Desarrollador.

Menú Desarrollador Visual Basic

 

  1. En la ventana VBA, vaya a Insertar > Módulo.

Insertar Módulo VBA

 

  1. En la ventana de código de la derecha, pegue el siguiente código y guárdelo.
Sub ObtenerCadena()
    Dim xStr As String
    Dim FRow As Long
    Dim xScreen As Boolean
    xScreen = Application.ScreenUpdating
    Application.ScreenUpdating = False
    xStr = Application.InputBox("Introduzca el Texto a Combinar/Permutar:", "Combinación/Permutación", , , , , , 2)
    If Len(xStr) < 2 Then Exit Sub If Len(xStr) >= 8 Then
        MsgBox "Demasiadas combinaciones!", vbInformation, "Combinaciones"
        Exit Sub
    Else
        ActiveSheet.Columns(1).Clear
        FRow = 1
        Call ObtenerPermutation("", xStr, FRow)
    End If
    Application.ScreenUpdating = xScreen
End Sub
Sub ObtenerPermutation(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 ObtenerPermutation(Str1 + Mid(Str2, i, 1), Left(Str2, i - 1) + Right(Str2, xLen - i), xRow)
        Next
    End If
End Sub

Código VBA para Permutar

 

  1. Ahora que ha creado la macro ObtenerCadena, puede ejecutarla. En la cinta de opciones, vaya a Programador > Macros.

Menú Desarrollador Macros

 

  1. Si aún no está seleccionada, seleccione la macro y haga clic en Ejecutar.

Ejecutar Macro en Excel

 

  1. En la ventana emergente, introduzca los caracteres para la combinación (aquí, abcde) y haga clic en Aceptar.

Introducir Caracteres a Permutar

 

Como resultado, en la columna A, se obtienen todas las permutaciones posibles (120) de los caracteres introducidos.

Resultado Permutar abcde

 

Además de la macro descrita anteriormente, Excel tiene una función incorporada, la Función PERMUTACIONES, que le permite calcular cuántas permutaciones se producen para cualquier número dado. Esta función sólo funciona con números y no con texto.

AI Formula Generator

Pruébelo Gratis

Ver todos los Artículos sobre Cómo Hacer