Consulta Sobre Userform

Tengo un userform, pero quiero que cuando le de "Aceptar" me ordene la información por ejemplo por numero de Cedula o por cualquier rango que yo le ponga
Gracias...

1 respuesta

Respuesta
1
Te dejo una rutina de ejemplo para que la adaptes a tu formulario.
Aquí solicito el nro de col a ordenar con un InputBox. Deberás además ajustar el rango de datos.
Private Sub CommandButton1_Click()
'desarrollada por Elsamatilde
col = Val(InputBox("Ingrese col de orden"))
If col <> "" Then
On Error Resume Next
Range("A1").Select
Range("A1:B20").Sort Key1:=Cells(1, col), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Range("B1").Select
End If
End Sub
Saludos
Elsa
Todo sobre formularios en general en manual Creando Formularios, desde:
http://es.geocities.com/lacibelesdepunilla/manuales
Muchas gracias elsa, pero me gustaría hacerlo más automático, solo que con aceptar lo ejecutara automáticamente, pero que no tenga que ingresar ningún imputbox
Si quiere le envío el archivo y me ayuda
Muchas gracias...
Muchas gracias elsa, pero me gustaría hacerlo más automático( que no tenga impubox), ¿se podrá hacer?
Muchas gracias...
Como te decía al inicio, esta rutina es solo un ejemplo para que adaptes a tu caso.
Yo utilicé Inputbox porque no dejaste aclarado cómo sabrá la macro por cual columna ordenar: se indica en una celda, será fijo, ... como mencionas en tu consulta: '... por cualquier rango que le ponga...'
Eso lo tenés que definir en la variable col
Dame una idea de cómo lo querés hacer y te ajusto la rutina (también podes enviarme tu archivo con la aclaración)
Ok, tengo un userform donde tengo, #cedula, nombre, fecha de nacimiento, etc
Después tengo checkbox, donde cuando le doy un click me carga la información a la hoja de excel, que aplica la misma información en el userform, pero a manera horizontal(a1, a2, a3). yo quiero que cuendo le de el checkbox me ingrese la información de userform y que lo ordene por nombre que en este caso seria la en la columna 2, ¿me puede ayudar con eso?
Muchas gracias...
Esta es una rutina para un checkbox, solo tenés que ajustar el rango de datos... si no te resuelve el problema, enviame tu libro a mi correo (recuérdame tu alias o motivo de consulta)
Private Sub CheckBox1_Click()
'desarrollada por Elsamatilde
If CheckBox1.Value = True Then
col = 2
On Error Resume Next
Range("A1").Select
Range("A1:B20").Sort Key1:=Cells(1, col), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Range("B1").Select
End If
End Sub
Muchísimas gracias matilde, me sirvió de muuuchisima ayuda, pero tuve que hacer algunos ajustes, aquí envío la rutina:
if cboxIngreso.Value = True Then
On Error Resume Next
Worksheets("Empleado").Select
Range("A1").Select
Range("A1:L200").Sort KEY1:=Cells(1, 2), ORDER1:=xlAscending, HEADER:=xlGuess, ORDERCUSTOM:=1, MatchCase:=False, Orientation:=xlTopToBottom, DATAOPTION1:=xlSortNormal
ActiveCell.Select
End If

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas