Ordenar un campo lista

21/10/2003 - 11:59 por Montse FS | Informe spam
Hola,

Tengo un formulario donde he puesto un campo lista
independiente en el cual a través de "origen de la fila"
he puesto una consulta para que me muestre los registros
de una tabla que tengo ordenador por fecha.

El caso es que quería poner un campo independiente arriba
con la lista de los campos de la tabla
(Id,Fecha,Beneficiario,importe...) para que tras la
actualización del campo (es decir, al seleccionar el tipo
de campo de la tabla) se me ordene por dicho campo.

Para haceros una idea es una base de datos de talones
realizados y en esa lista lo que hago es una búsqueda de
un talón.
Si teneis incluso algun ejemplo de busquedas entre fechas
y orde de este tipo os lo agradeceria porque me serviria
para otras cosas.

Gracias por vuestro tiempo.

Preguntas similare

Leer las respuestas

#1 CarCar
21/10/2003 - 12:11 | Informe spam
Hola:

No voy a responder a lo que preguntas, pero te voy a decir
como lo habría hecho yo.

En lugar de un "campo lista" utilizaría un subformulario,
así, no tendrías que programar nada de búsqueda ni de
ordenaciones, pues puedes utilizar la barra de
herramientas del propio Access para ordenaciones y
búsquedas.

Saludos,
CarCar
MVP-Access

PD: Espero que otr@ conteste a tu pregunta.

Hola,

Tengo un formulario donde he puesto un campo lista
independiente en el cual a través de "origen de la fila"
he puesto una consulta para que me muestre los registros
de una tabla que tengo ordenador por fecha.

El caso es que quería poner un campo independiente arriba
con la lista de los campos de la tabla
(Id,Fecha,Beneficiario,importe...) para que tras la
actualización del campo (es decir, al seleccionar el tipo
de campo de la tabla) se me ordene por dicho campo.

Para haceros una idea es una base de datos de talones
realizados y en esa lista lo que hago es una búsqueda de
un talón.
Si teneis incluso algun ejemplo de busquedas entre fechas
y orde de este tipo os lo agradeceria porque me serviria
para otras cosas.

Gracias por vuestro tiempo.
.

Respuesta Responder a este mensaje
#2 Montse FS
21/10/2003 - 12:41 | Informe spam
Gracias,
Lo había pensado con un subformulario, pero de todas
formas quiero que no tengan acceso a las barras de access
ya que los usuarios aqui son un pelo patosos. Por eso
necesito que la seleccion la prefije yo.


Hola:

No voy a responder a lo que preguntas, pero te voy a


decir
como lo habría hecho yo.

En lugar de un "campo lista" utilizaría un subformulario,
así, no tendrías que programar nada de búsqueda ni de
ordenaciones, pues puedes utilizar la barra de
herramientas del propio Access para ordenaciones y
búsquedas.

Saludos,
CarCar
MVP-Access

PD: Espero que otr@ conteste a tu pregunta.

Hola,

Tengo un formulario donde he puesto un campo lista
independiente en el cual a través de "origen de la fila"
he puesto una consulta para que me muestre los registros
de una tabla que tengo ordenador por fecha.

El caso es que quería poner un campo independiente




arriba
con la lista de los campos de la tabla
(Id,Fecha,Beneficiario,importe...) para que tras la
actualización del campo (es decir, al seleccionar el




tipo
de campo de la tabla) se me ordene por dicho campo.

Para haceros una idea es una base de datos de talones
realizados y en esa lista lo que hago es una búsqueda de
un talón.
Si teneis incluso algun ejemplo de busquedas entre




fechas
y orde de este tipo os lo agradeceria porque me serviria
para otras cosas.

Gracias por vuestro tiempo.
.



.

Respuesta Responder a este mensaje
#3 CarCar
21/10/2003 - 13:13 | Informe spam
Hola:

Bueno, pues para ordenar la lista, lo mejor es que crees
un cuadro combinado, con los nombres de los campos por los
que quieres ordenar.

Luego en el evento "Al hacer click" del mismo colocas un
código similar a este:

Private Sub Cuadro_combinado2_Click()
Dim sSql As String

sSql = "SELECT * FROM Tabla"
sSql = sSql & " ORDER BY " & Me.Cuadro_combinado2

Me.Lista0.RowSource = sSql
End Sub

Deberás de sustituir el "SELECT * FROM Tabla" por la
sentencia Sql del origen de la fila de tu lista.

Si incluyeras un cuadro de texto, para buscar por ejemplo
por Importe, el código, se modificaría en el evento
anterior y se debería de incluir también, por ejemplo en
el evento "Después de actualizar" del cuadro de texto:

Private Sub Texto1_AfterUpdate()
Dim sSql As String
Dim sWhe As String

sSql = "SELECT * FROM Tabla1"
If Me.Texto1 <> "" Then
sSql = sSql & " WHERE Campo01 = " & Me.Texto1
End If

sSql = sSql & " ORDER BY " & Me.Cuadro_combinado2

Me.Lista0.RowSource = sSql
End Sub

Espero que te sirva de guía y si tienes problemas vuelve
por aquí.

Saludos,
CarCar
MVP-Access


Gracias,
Lo había pensado con un subformulario, pero de todas
formas quiero que no tengan acceso a las barras de access
ya que los usuarios aqui son un pelo patosos. Por eso
necesito que la seleccion la prefije yo.


Hola:

No voy a responder a lo que preguntas, pero te voy a


decir
como lo habría hecho yo.

En lugar de un "campo lista" utilizaría un




subformulario,
así, no tendrías que programar nada de búsqueda ni de
ordenaciones, pues puedes utilizar la barra de
herramientas del propio Access para ordenaciones y
búsquedas.

Saludos,
CarCar
MVP-Access

PD: Espero que otr@ conteste a tu pregunta.

Hola,

Tengo un formulario donde he puesto un campo lista
independiente en el cual a través de "origen de la






fila"
he puesto una consulta para que me muestre los






registros
de una tabla que tengo ordenador por fecha.

El caso es que quería poner un campo independiente




arriba
con la lista de los campos de la tabla
(Id,Fecha,Beneficiario,importe...) para que tras la
actualización del campo (es decir, al seleccionar el




tipo
de campo de la tabla) se me ordene por dicho campo.

Para haceros una idea es una base de datos de talones
realizados y en esa lista lo que hago es una búsqueda






de
un talón.
Si teneis incluso algun ejemplo de busquedas entre




fechas
y orde de este tipo os lo agradeceria porque me






serviria
para otras cosas.

Gracias por vuestro tiempo.
.



.



.

Respuesta Responder a este mensaje
#4 E.Feijoo
21/10/2003 - 15:42 | Informe spam
Si la presentación de los datos es continua (formulario continuo) y los datos están bloqueados (solo lectura), te propongo un método, en el evento click (o doble click a gusto del consumidor) pones lo siguiente

(Bueno, mejor te copio una rutina ya hecha y tu la adaptas a tu gusto)

Private Sub OrdenCampo()
Me.MensPausa.Visible = True
If InStr(Me.OrderBy, "desc") > 0 Then Me.OrderBy = Me.ActiveControl.Name Else Me.OrderBy = Me.ActiveControl.Name & " desc"
Me.OrderByOn = True
Me.MensPausa.Visible = False
Me.Telefono.SetFocus
End Sub



MensPausa, es un mensaje emergente (por si la reestructuración de los datos se 'pone pesada'), (suele ser visto y no visto)
Si el campo estuviera ordenado en descendente, le invierte el orden, en otro caso ascendente
Actúa sobre cualquier campo que le llame, para ello en el evento click o adecuado poner simplemente 'OrdenCampo'
Por defecto al salir, lo envío siempre al campo que efectuara de 'pivote' para otras funcionalidades

Un ejemplo:

Private Sub Apellido_Click()
OrdenCampo
End Sub

Si te gusta, aplícalo, es cómodo

Un saludo E. Feijoo




"Montse FS" escribió en el mensaje news:0b4601c397b9$f9500220$
Hola,

Tengo un formulario donde he puesto un campo lista
independiente en el cual a través de "origen de la fila"
he puesto una consulta para que me muestre los registros
de una tabla que tengo ordenador por fecha.

El caso es que quería poner un campo independiente arriba
con la lista de los campos de la tabla
(Id,Fecha,Beneficiario,importe...) para que tras la
actualización del campo (es decir, al seleccionar el tipo
de campo de la tabla) se me ordene por dicho campo.

Para haceros una idea es una base de datos de talones
realizados y en esa lista lo que hago es una búsqueda de
un talón.
Si teneis incluso algun ejemplo de busquedas entre fechas
y orde de este tipo os lo agradeceria porque me serviria
para otras cosas.

Gracias por vuestro tiempo.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida