Foros del Web » Soporte técnico » Software General »

Lista Aleatoria en Excel

Estas en el tema de Lista Aleatoria en Excel en el foro de Software General en Foros del Web. Hola Gente , desde ya muchas gracias a toda persona que pueda ayudarme. Mi tema es que tengo una planilla de excel, con un listado ...
  #1 (permalink)  
Antiguo 19/06/2004, 17:40
 
Fecha de Ingreso: agosto-2003
Mensajes: 90
Antigüedad: 20 años, 7 meses
Puntos: 0
Pregunta Lista Aleatoria en Excel

Hola Gente , desde ya muchas gracias a toda persona que pueda ayudarme.

Mi tema es que tengo una planilla de excel, con un listado de aprox 3000 registros, son datos de personas (ej. Nombre, apellido, dni, etc)

Necesito de ese listado extraer ALEATORIAMENTE o sea AL AZAR, un grupo de aproximadamente 100 personas, o las que sean.

Ya he buscado varias formas. Una es pasarla a un Acces y aplicarle luego una consulta a la BD, pero este tema lo va a manejar gente sin copnocimeintos de BD o de programacion, por lo que necesito algo sencillo de aplicar.

Agradezco a todo aquel que me puieda ayudar.

Saludos!!
Pablo
  #2 (permalink)  
Antiguo 19/06/2004, 19:58
Avatar de jesusbet
(Desactivado)
 
Fecha de Ingreso: mayo-2004
Ubicación: Monterrey, MX
Mensajes: 2.667
Antigüedad: 19 años, 10 meses
Puntos: 2
Podrías hacerlo con una Macro... haciendo que se ordene por nombre, pero realmente no sé como se hace aleatoriamente, pero podrías empezar por ahí...

sAludos
  #3 (permalink)  
Antiguo 23/06/2004, 06:24
 
Fecha de Ingreso: enero-2002
Mensajes: 60
Antigüedad: 22 años, 2 meses
Puntos: 0
Podrías utilizar la fórmula =ALEATORIO().
Puedes crear un nuevo campo en la lista poniendo esta fórmula a todos.
Mediante una macro asignado a un botón o a una acción, llamas a esta fórmula por lo que siempre tendras un nº distinto cada vez y para cada persona.
Luego le aplicas un rango y coges los 100 con el nº más alto o con el nº más bajo.

Así creo que podría valerte

Un saludo
  #4 (permalink)  
Antiguo 24/06/2004, 12:40
Avatar de judoka  
Fecha de Ingreso: enero-2004
Ubicación: viña del mar
Mensajes: 180
Antigüedad: 20 años, 2 meses
Puntos: 3
hola , mira yo tengo hecho algo parecido , lo que hago basicamente es asignar un número correlativo a cada fila , luego genero números aleatorios entre 1 y la cantidad de datos, a continuación con la formula buscarv extraigo los datos que me interesan
la macro es la siguiente:

Range("B7:F30000").Select 'rango de los resutados de la muentra
Selection.ClearContents ' limpio las celdas
For i = 6 To Range("d4").Value + 6 ' en d4 tengo la cantidad de la muestra
Cells(i, 2).Select ' seleccione desde la fila 6
aleatorio = Int((Range("F4") * Rnd) + 1) ' arroja el numero aleatoreo
ActiveCell.Value = aleatorio ' asigna el numero a la celda

Next
Range("C6:f6").Select ' rango donde tengo la formula buscarv
Selection.Copy
Range("b6").Select
Do While Not IsEmpty(ActiveCell)
ActiveCell.Offset(1, 1).Select ' copio la formula a las filas que tengan datos
ActiveCell.Select
ActiveSheet.Paste
ActiveCell.Offset(0, -1).Select
Loop

ActiveCell.Clear
ActiveCell.Offset(0, 1).Select
ActiveCell.Clear
ActiveCell.Offset(0, 1).Select
ActiveCell.Clear
ActiveCell.Offset(0, 1).Select
ActiveCell.Clear
ActiveCell.Offset(0, 1).Select
ActiveCell.Clear
Range("b6").Select

End Sub


el único problema (que no he buscado solucion aún) , es que me puede entregar muestar repetidas.

verlo asi es un poco complicado , pero si deseas me das un e-mail y te envio el ejemplo.

__________________
hay tres tipos de matemáticos, los que saben contar y los que no.
Oscar
  #5 (permalink)  
Antiguo 24/06/2004, 12:57
Avatar de jesusbet
(Desactivado)
 
Fecha de Ingreso: mayo-2004
Ubicación: Monterrey, MX
Mensajes: 2.667
Antigüedad: 19 años, 10 meses
Puntos: 2
Orale master... eso está bueno, gracias.
  #6 (permalink)  
Antiguo 25/06/2004, 09:08
Avatar de Masternauta  
Fecha de Ingreso: marzo-2004
Mensajes: 124
Antigüedad: 20 años
Puntos: 0
aprovechando el impulso:
tengo una planilla de 10 nombres (columna a) y sus edades (solumna b) y necesito crear un cuadro de dialogo en el cual me muestre una lista desplegable con los nombres y al seleccionar uno de ellos necesito que me muestre su edad, claro que en una etiqueta (label) no en un cuadro de texto o cuadro de lista, es decir, que aparezca en el mismo cuadro de dialogo (useform) sin posibilidad de ser modificado.
  #7 (permalink)  
Antiguo 25/06/2004, 17:46
Avatar de judoka  
Fecha de Ingreso: enero-2004
Ubicación: viña del mar
Mensajes: 180
Antigüedad: 20 años, 2 meses
Puntos: 3
De acuerdo

a ver...
primero insertas un userform y en pones un combobox y un textbox
supongamos que los nombres estan en el rango a:4 a b:14 en c4:c14 estan las edades
luego en la propiedad rowsource del combo box pones a4:b14
y el el codigo del comobobox pones:
Private Sub ComboBox1_Change()
Range("e5").Value = ComboBox1.Value
TextBox1.Value = Range("f5").Value
End Sub
es decir nos pone el valor seeccionado en la celda e5

luego por ese valor buscas la edad con la formula :
=BUSCARV(E5;A4:C14;3;FALSO)
esta formula la pones en la ceda f5


algo asi mas o menos or lo menos a mi me funciona si quieres el ejemplo me avisas.
__________________
hay tres tipos de matemáticos, los que saben contar y los que no.
Oscar
  #8 (permalink)  
Antiguo 26/06/2004, 08:55
Avatar de Masternauta  
Fecha de Ingreso: marzo-2004
Mensajes: 124
Antigüedad: 20 años
Puntos: 0
Entiendo, pero de acuerdo a la formula el dato debiera aparecer en la hoja de calculo, no en el cuadro de dialogo. Ahora bien, la idea es utilizar la columna A (del 1 al 10) con nombres, la columna B (del 1 al 10) sus respectivas edades, luego creo el cuadro de dialogo con una lista desplegable en la cual coloco los nombres (ahi no hay problema, ya esta solucionado) pero lo que necesito es que la edad me la muestre en el mismo cuadro de dialogo, en un cuadro de texto que no pueda ser modificado. La idea es no tocar absolutamente nada en la hoja de calculo, sino que solo se muestre el valor en el useform y que todo lo haga la macro.
  #9 (permalink)  
Antiguo 26/06/2004, 21:06
Avatar de judoka  
Fecha de Ingreso: enero-2004
Ubicación: viña del mar
Mensajes: 180
Antigüedad: 20 años, 2 meses
Puntos: 3
bueno lo de las columnas es lo de menos lo que pasa es que puse nombres , apellidos y la edad , el valor de la edad , efectivamente la macro lo calcula en la hja de calculo , pero lo muestra en el userform, si quieres puedes ocultar las columnas donde estan los datos.
__________________
hay tres tipos de matemáticos, los que saben contar y los que no.
Oscar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:32.