Skip to main content

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

¿Cómo hacer un sorteo de nombres en Excel?

Author Xiaoyang Last modified

En actividades laborales, reuniones de equipo o eventos especiales, a menudo es necesario seleccionar algunos participantes o ganadores al azar de una gran lista de nombres, por ejemplo, para una rifa de equipo, premios aleatorios o la elección de voluntarios. Elegir nombres manualmente de un sombrero puede ser ineficiente o poco práctico cuando se trabaja con listas digitales, especialmente si el número de nombres aumenta. Afortunadamente, Excel ofrece una variedad de métodos prácticos para hacer una selección aleatoria desde tu lista, permitiéndote crear experiencias de sorteo transparentes, repetibles y personalizables directamente en tus hojas de cálculo. Este artículo te guiará a través de varias formas efectivas de elegir nombres al azar en Excel, destacando sus escenarios, ventajas y consideraciones, así como compartiendo consejos útiles para evitar errores comunes en el proceso.

Extraer nombres aleatorios para realizar sorteos utilizando fórmulas

Seleccionar nombres aleatorios para realizar sorteos con Kutools para Excel

Extraer nombres aleatorios para realizar sorteos con código VBA

Alternativa: Extraer nombres aleatorios utilizando la función RAND y ordenación


Extraer nombres aleatorios para realizar sorteos utilizando fórmulas

Si necesitas seleccionar aleatoriamente un número específico de nombres (por ejemplo, 3 ganadores) de una columna de nombres, puedes usar un enfoque basado en una fórmula compleja. Este enfoque evita automáticamente selecciones duplicadas y actualiza el resultado cada vez que el libro recalcula. Es especialmente adecuado para extraer un pequeño número fijo de nombres de una lista de tamaño medio, particularmente cuando deseas que el proceso sea trazable y no requiera complementos adicionales o código.

Para usar este método, sigue los pasos a continuación:

Introduce la siguiente fórmula en una celda en blanco donde quieras que aparezca el primer resultado del sorteo (por ejemplo, C2):

=IF(ROWS(C$2:C2)>B$2,"",INDEX(A$2:A$16,AGGREGATE(15,6,((ROW(A$2:A$16)-ROW(A$2)+1)/ISNA(MATCH(A$2:A$16,C$1:C1,0))),RANDBETWEEN(1,ROWS(A$2:A$16)-COUNTA(C$1:C1)+1))))

Después de introducir la fórmula, arrastra el controlador de relleno hacia abajo tantas filas como nombres quieras extraer (por ejemplo, si quieres extraer 3 nombres, arrástralo hacia abajo 3 filas hasta C4). Los nombres extraídos aparecerán automáticamente en las celdas. Ver captura de pantalla:

Extract random names with a formula

Explicaciones de parámetros y consejos prácticos:

  • En esta fórmula:
    • A2:A16 — esta es tu lista de nombres de origen. Cambia este rango para que coincida con tus datos de nombres reales.
    • B2 — esta celda debe contener el número total de nombres que deseas seleccionar aleatoriamente (por ejemplo, introduce 3).
    • C2 — esta es la primera celda en tu lista de resultados donde introduces la fórmula.
    • C1 — esta es la celda directamente encima de la fórmula. Es necesaria para que la estructura de la fórmula funcione correctamente, incluso si se deja en blanco.
  • Este método es dinámico: si necesitas un nuevo conjunto de nombres aleatorios, simplemente presiona F9 para recalcular y obtener un nuevo conjunto de resultados.
  • Para evitar que las fórmulas cambien cada vez que la hoja de cálculo recalcula, puedes copiar los resultados y usar Pegado especial > Valores para hacer que los nombres extraídos sean estáticos.
  • Si tu lista de nombres es más grande o si quieres realizar el sorteo varias veces, asegúrate de no superponer tu columna de resultados con tu lista de nombres, ya que esto puede causar errores.

Precaución: Verifica dos veces que las referencias de celda sean correctas y que los rangos coincidan con tus datos reales. Cambiar la estructura de la hoja de trabajo o eliminar celdas referenciadas puede causar que la fórmula falle.


Seleccionar nombres aleatorios para realizar sorteos con Kutools para Excel

Si prefieres un método simple e interactivo sin escribir fórmulas, Kutools para Excel proporciona una manera sencilla de seleccionar nombres al azar directamente a través de su función Reorganizar Rango Aleatoriamente. Esta solución es particularmente útil para usuarios no técnicos o cuando quieres trabajar visualmente y rápidamente, especialmente con grandes conjuntos de datos o cuando necesitas repetir sorteos frecuentemente.

Kutools para Excel ofrece más de 300 funciones avanzadas para simplificar tareas complejas, potenciando la creatividad y la eficiencia. Integrado con capacidades de inteligencia artificial, Kutools automatiza las tareas con precisión, haciendo que la gestión de datos sea sencilla. Información detallada de Kutools para Excel...  Prueba gratuita...

Después de instalar Kutools para Excel, sigue estos pasos:

1. Selecciona toda la lista de nombres que deseas usar para el sorteo. Luego haz clic en Kutools > Rango > Ordenar / Seleccionar Rango Aleatoriamente. Ver captura de pantalla:

click Sort / Select Range Randomly feature of kutools

2. En el Ordenar/Seleccionar Rango Aleatoriamente cuadro de diálogo, ve a la Seleccionar pestaña. Aquí, introduce el número de nombres aleatorios que deseas en el Número de celdas a seleccionar cuadro (por ejemplo, 3), luego elige Seleccionar celdas aleatorias en la Tipo de selección sección. Esto te permite elegir cualquier número de nombres únicos al azar. Ver captura de pantalla:

specify the options in the dialog box

3. Haz clic en Ok. El número especificado de nombres será seleccionado al azar y resaltado en tu lista, lo que te permitirá identificar fácilmente a los ganadores o participantes seleccionados. Ver captura de pantalla:

the specific number of names are selected

Este método destaca por su facilidad de uso y confiabilidad, con opciones adicionales para ordenar o barajar nombres si se desea. Puedes usar esta función tantas veces como sea necesario, y evita errores manuales o repeticiones comunes con cálculos a mano. Es ideal para aquellos que buscan una solución rápida sin preocuparse por fórmulas o codificación.

Nota: Asegúrate de no seleccionar otros datos irrelevantes en tu rango, ya que solo las celdas resaltadas representan tus nombres ganadores. Los nombres resaltados pueden ser copiados o marcados según sea necesario para su posterior uso.

¡Haz clic para descargar Kutools para Excel y probarlo gratis ahora!

En resumen, usar Kutools para Excel proporciona una forma fácil de usar y altamente eficiente de administrar sorteos aleatorios. Es especialmente adecuado cuando la fiabilidad y la facilidad de uso son tus principales preocupaciones, o cuando necesitas realizar múltiples sorteos con diferentes tamaños de grupo.


Extraer nombres aleatorios para realizar sorteos con código VBA

Para escenarios avanzados o cuando deseas automatizar el proceso con más flexibilidad, el código VBA puede usarse para extraer nombres aleatorios de tu lista. Esta solución es adecuada si estás familiarizado con las opciones de Desarrollador de Excel y quieres repetir sorteos o modificar procedimientos, como generar resultados en una ubicación específica o manejar listas más grandes.

Sigue estos pasos para usar VBA en sorteos:

1. Presiona Alt + F11 para abrir la ventana Microsoft Visual Basic para Aplicaciones.

2. Haz clic en Insertar > Módulo para crear un nuevo módulo, luego copia y pega el siguiente código VBA en la ventana del módulo.

Código VBA: Extraer nombres aleatorios de una lista:

Public Sub LuckyDraw()
    Dim I, J, xRnd As Long
    Dim xSRg, xDRg As Range
    Dim xDic As New Dictionary
    Dim xnum, xLastRow As Long
    On Error Resume Next
    Set xSRg = Application.InputBox("Please select the data list:", "KuTools for Excel", Selection.Address, , , , , 8)
    If xSRg Is Nothing Then Exit Sub
    Set xDRg = Application.InputBox("Please selecta cell to put the result:", "KuTools for Excel", , , , , , 8)
    If xDRg Is Nothing Then Exit Sub
    xLastRow = xSRg.Rows.Count
    Set xSRg = xSRg(1)
    Set xDRg = xDRg(1)
    xnum = Range("B2")
    If xnum < 1 Then Exit Sub
    J = 0
    For I = 1 To xnum
LabExit:
        xRnd = Int(Rnd() * xLastRow)
        If xDic.Exists(xRnd) Then GoTo LabExit
        xDic.Add xRnd, ""
        xDRg.Offset(J, 0).Value = xSRg.Offset(xRnd, 0).Value
        J = J + 1
    Next
End Sub

Clarificación de parámetros: En el código, B2 es la celda donde introduces el número de nombres aleatorios que deseas extraer. Puedes cambiar las referencias de celda según sea necesario.

3. Después de pegar el código, ve a Herramientas > Referencias en la ventana del editor de VBA. En el cuadro de diálogo que se abre, marca la opción Microsoft Scripting Runtime en la lista de Referencias Disponibles. Este paso es necesario para habilitar el diccionario de scripting utilizado en el código. Ver captura de pantalla:

click Tools > References, then check Microsoft Scripting Runtime option

4. Haz clic en OK para cerrar el cuadro de diálogo, luego presiona F5 para ejecutar el código. Aparecerá un cuadro de diálogo solicitándote seleccionar la lista de datos que contiene los nombres que deseas extraer. Ver captura de pantalla:

vba code to select the data list

5. Haz clic en OK. Aparecerá otro cuadro de diálogo para que elijas la celda objetivo donde deseas que se muestren los resultados del sorteo. Ver captura de pantalla:

vba code to select a cell to put the result

6. Haz clic en OK para completar el proceso. Los nombres seleccionados al azar se mostrarán inmediatamente a partir de la celda que especificaste. Ver captura de pantalla:

the desired number of names are created randomly

Consejos prácticos: Antes de ejecutar el código, asegúrate de guardar tu trabajo. Si encuentras errores, verifica dos veces la configuración de referencias y la selección de rangos de celdas. Este método te da más control, pero es mejor para usuarios que están familiarizados con operaciones básicas de VBA.

Pros y contras: El enfoque VBA es poderoso para la personalización y puede adaptarse para requisitos avanzados, como excluir ganadores anteriores, automatizar notificaciones y más. Sin embargo, requiere conocimientos básicos de VBA y puede no ser adecuado a menos que se permitan macros en tu entorno.


Alternativa: Extraer nombres aleatorios usando la función RAND y ordenación

Además de los métodos anteriores, otra solución práctica y visual es usar la función RAND de Excel combinada con la ordenación. Este método es simple, no requiere fórmulas con estructuras complejas, complementos ni codificación, lo que lo hace adecuado para sorteos rápidos y ocasionales en cualquier versión de Excel. Es especialmente útil cuando quieres ver y verificar manualmente cómo se lleva a cabo la aleatorización.

Aquí está cómo hacerlo:

  • Añade una columna auxiliar junto a tu lista de nombres e introduce =RAND() en la primera celda de la columna auxiliar (por ejemplo, si tus nombres están en A2:A16, introduce =RAND() en B2).
  • Copia la fórmula hacia abajo junto a toda tu lista. Cada celda se llenará con un número decimal aleatorio.
  • Selecciona tanto tus nombres originales como la columna auxiliar RAND.
  • Ve a la pestaña Datos y elige Ordenar. Configura la ordenación para usar la columna auxiliar con los valores RAND, ordenando de menor a mayor (o viceversa). Esto reordenará aleatoriamente toda la lista.
  • Una vez ordenada, simplemente selecciona los primeros N nombres de la lista reordenada como tus ganadores del sorteo.

Consejos y notas: Cada vez que tu hoja de cálculo recalcula, la función RAND se actualizará. Si quieres congelar los resultados del sorteo, copia los nombres y pégales como valores en otro lugar. Si quieres otro sorteo, simplemente recalcula (F9).

Ventajas: Este enfoque es extremadamente fácil de implementar, no requiere configuración adicional y es claro para demostrar equidad durante sorteos en vivo. Sin embargo, es menos adecuado si necesitas repetir sorteos con frecuencia o requieres características avanzadas como listas de exclusión, que pueden ser mejor manejadas por fórmulas, VBA o Kutools.


En resumen, Excel ofrece múltiples formas de seleccionar nombres aleatoriamente para sorteos. La elección del método depende de tus preferencias por simplicidad, personalización o interacción visual. Para uso manual sencillo, se recomienda usar RAND y ordenación o Kutools para Excel. Para soluciones dinámicas y reutilizables, las fórmulas o VBA ofrecen flexibilidad adicional. Si encuentras errores o resultados inesperados, verifica dos veces tus referencias de celda, selecciones de rango y asegúrate de que los complementos o configuraciones de macros necesarias estén habilitadas. Para obtener los mejores resultados, siempre guarda tus datos antes de comenzar un sorteo y valida los resultados para evitar errores en actividades importantes o eventos de equipo.


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