Discussion:
Almacenar selección múltiple de un cuadro de lista en un campo
(demasiado antiguo para responder)
x***@gmail.com
2008-01-09 18:04:28 UTC
Permalink
Raw Message
Hola a todos. Soy novato en esto del access y tengo un problema en
access2003.

Tengo un listbox que visualiza los registros de un campo de una tabla.
Tengo que hacer selección mútiple en el listbox... he leído que se
puede almacenar todos los valores como cadena de texto separada con
comas... pero... no me queda nada claro. ¿cómo lo debo hacer?

Muchas gracias y saludos
Emilio
2008-01-09 18:24:37 UTC
Permalink
Raw Message
--------------------------------------------------------------------------
¡Importante!: Colabora con el grupo.Contesta a este mensaje y dinos si te
sirvió o no la respuesta dada. Muchas gracias
--------------------------------------------------------------------------
Hola!

tengo la impresión de que mezclas churras con merinas ;)

Un cuadro de lista se puede cargar mediante una serie de cadenas
concatenadas con comas (o puntos y comas según la configuración regional de
cada cual), pero la selección múltiple no tiene nada ver con eso, es una
propiedad mas que puedes ajustar entre las propiedades del cuadro de lista.

Saludos a ***@s

Emilio [MS-MVP Access 2006/8]
miliuco56 ALGARROBA hotmail.com
http://www.mvp-access.com/foro
http://www.mvp-access.com/emilioque


<***@gmail.com> escribi� en el mensaje news:0f8c1d15-6daf-4cc5-9a5b-***@i72g2000hsd.googlegroups.com...
Hola a todos. Soy novato en esto del access y tengo un problema en
access2003.

Tengo un listbox que visualiza los registros de un campo de una tabla.
Tengo que hacer selección mútiple en el listbox... he leído que se
puede almacenar todos los valores como cadena de texto separada con
comas... pero... no me queda nada claro. ¿cómo lo debo hacer?

Muchas gracias y saludos
x***@gmail.com
2008-01-10 10:28:02 UTC
Permalink
Raw Message
Hola de nuevo,

Creo que no me he explicado bien. Tengo un listbox configurado con
selección múltiple; mi pregunta es: como puedo almacenar esa selección
múltiple en el campo?.

Gracias.
Emilio
2008-01-10 11:09:20 UTC
Permalink
Raw Message
--------------------------------------------------------------------------
¡Importante!: Colabora con el grupo.Contesta a este mensaje y dinos si te
sirvió o no la respuesta dada. Muchas gracias
--------------------------------------------------------------------------
Pues si, cualquier parecido con la realidad ...

a ver tengo un botón (cmdGuardar), un cuadro de lista (lstPais) configurado
para selección multiple y un cuadro de texto (txtResultado), en el evento al
hacer click del botón he puesto el siguiente código

Private Sub cmdGuardar_Click()
Dim i As Integer, _
strCadena As String

For i = 0 To Me.lstPais.ListCount - 1
If Me.lstPais.Selected(i) Then
strCadena = strCadena & Me.lstPais.Column(1, i) & ","
End If
Next i
Me.txtResultado = Left(strCadena, Len(strCadena) - 1)
End Sub

que me devuelve en el cuadro de texto txtResultado los distintos paises
seleccionados concatenados con una coma, OjO, el cuadro de lista tiene dos
columnas, la primera es la clave y está oculta, por eso lo de column(1, i)

Saludos a ***@s
Emilio [MS-MVP Access 2006/8]
miliuco56 ALGARROBA hotmail.com
http://www.mvp-access.com/foro
http://www.mvp-access.com/emilio


<***@gmail.com> escribi� en el mensaje news:c61b9667-adf1-4974-bb78-***@k2g2000hse.googlegroups.com...
Hola de nuevo,

Creo que no me he explicado bien. Tengo un listbox configurado con
selección múltiple; mi pregunta es: como puedo almacenar esa selección
múltiple en el campo?.

Gracias.
x***@gmail.com
2008-01-10 19:36:54 UTC
Permalink
Raw Message
Post by Emilio
--------------------------------------------------------------------------
¡Importante!: Colabora con el grupo.Contesta a este mensaje y dinos si te
sirvió o no la respuesta dada. Muchas gracias
--------------------------------------------------------------------------
Pues si, cualquier parecido con la realidad ...
a ver tengo un botón (cmdGuardar), un cuadro de lista (lstPais) configurado
para selección multiple y un cuadro de texto (txtResultado), en el evento al
hacer click del botón he puesto el siguiente código
Private Sub cmdGuardar_Click()
Dim i As Integer, _
    strCadena As String
For i = 0 To Me.lstPais.ListCount - 1
   If Me.lstPais.Selected(i) Then
      strCadena = strCadena & Me.lstPais.Column(1, i) & ","
   End If
Next i
Me.txtResultado = Left(strCadena, Len(strCadena) - 1)
End Sub
que me devuelve en el cuadro de texto txtResultado los distintos paises
seleccionados concatenados con una coma, OjO, el cuadro de lista tiene dos
columnas, la primera es la clave y está oculta, por eso lo de column(1, i)
Emilio [MS-MVP Access 2006/8]
miliuco56 ALGARROBA hotmail.comhttp://www.mvp-access.com/forohttp://www.mvp-access.com/emilio
Hola de nuevo,
Creo que no me he explicado bien. Tengo un listbox configurado con
selección múltiple; mi pregunta es: como puedo almacenar esa selección
múltiple en el campo?.
Gracias.
Me ha servido de mucha ayuda, gracias.

Saludos a todos
Emilio
2008-01-10 19:46:11 UTC
Permalink
Raw Message
:-))

Saludos a ***@s

Emilio [MS-MVP Access 2006/8]
miliuco56 ALGARROBA hotmail.com
http://www.mvp-access.com/foro
http://www.mvp-access.com/emilio
Post by Emilio
--------------------------------------------------------------------------
¡Importante!: Colabora con el grupo.Contesta a este mensaje y dinos si te
sirvió o no la respuesta dada. Muchas gracias
--------------------------------------------------------------------------
Pues si, cualquier parecido con la realidad ...
a ver tengo un botón (cmdGuardar), un cuadro de lista (lstPais) configurado
para selección multiple y un cuadro de texto (txtResultado), en el evento al
hacer click del botón he puesto el siguiente código
Private Sub cmdGuardar_Click()
Dim i As Integer, _
strCadena As String
For i = 0 To Me.lstPais.ListCount - 1
If Me.lstPais.Selected(i) Then
strCadena = strCadena & Me.lstPais.Column(1, i) & ","
End If
Next i
Me.txtResultado = Left(strCadena, Len(strCadena) - 1)
End Sub
que me devuelve en el cuadro de texto txtResultado los distintos paises
seleccionados concatenados con una coma, OjO, el cuadro de lista tiene dos
columnas, la primera es la clave y está oculta, por eso lo de column(1, i)
Emilio [MS-MVP Access 2006/8]
miliuco56 ALGARROBA
hotmail.comhttp://www.mvp-access.com/forohttp://www.mvp-access.com/emilio
Hola de nuevo,
Creo que no me he explicado bien. Tengo un listbox configurado con
selección múltiple; mi pregunta es: como puedo almacenar esa selección
múltiple en el campo?.
Gracias.
Me ha servido de mucha ayuda, gracias.

Saludos a todos
r***@gmail.com
2016-10-24 12:58:18 UTC
Permalink
Raw Message
Post by x***@gmail.com
Hola a todos. Soy novato en esto del access y tengo un problema en
access2003.
Tengo un listbox que visualiza los registros de un campo de una tabla.
Tengo que hacer selección mútiple en el listbox... he leído que se
puede almacenar todos los valores como cadena de texto separada con
comas... pero... no me queda nada claro. ¿cómo lo debo hacer?
Muchas gracias y saludos
Hola, hace tiempo de esta conversación, pero estoy aprovechando las respuestas y tengo un problema: cuando ya he capturado en el cuadro de texto la información del cuadro de lista, intento capturar el campo para el filtro de una consulta, y el sistema me da el error de que es demasiado complejo... pero sólo al seleccionar valores múltiples; si escojo un único resultado en el cuadro de lista, la consulta funciona... no sé qué hacer...
Francisco Prado
2016-10-27 16:38:36 UTC
Permalink
Raw Message
Post by r***@gmail.com
Post by x***@gmail.com
Hola a todos. Soy novato en esto del access y tengo un problema en
access2003.
Tengo un listbox que visualiza los registros de un campo de una tabla.
Tengo que hacer selección mútiple en el listbox... he leído que se
puede almacenar todos los valores como cadena de texto separada con
comas... pero... no me queda nada claro. ¿cómo lo debo hacer?
Muchas gracias y saludos
Hola, hace tiempo de esta conversación, pero estoy aprovechando las respuestas y tengo un problema: cuando ya he capturado en el cuadro de texto la información del cuadro de lista, intento capturar el campo para el filtro de una consulta, y el sistema me da el error de que es demasiado complejo... pero sólo al seleccionar valores múltiples; si escojo un único resultado en el cuadro de lista, la consulta funciona... no sé qué hacer...
Hola tienes que recorren la coleccion de la lista con los elementos
marcados y construir tu propio filtro y que daria mas o menos asi:

Crea un Formulario con una LISTA le activas multi select y un boton y lo
llamas cmdLista, pegas el codigo y ejecutas el formulario


Private Sub cmdLista_Click()
Dim sFiltro As String
Dim sSQL As String
Dim nI As Long

sFiltro = ""
For nI = 0 To LISTA.ItemsSelected.Count - 1
sFiltro = sFiltro & "'" &
LISTA.ItemData(LISTA.ItemsSelected.Item(nI)) & "',"
Next
If Len(sFiltro) > 0 Then
sFiltro = Mid$(sFiltro, 1, Len(sFiltro) - 1)
sSQL = "SELECT * FROM MI_TABLA WHERE MI_CAMPO IN (" & sFiltro & ")"
Else
sSQL = "SELECT * FROM MI_TABLA"
End If

'Con este resultado lo colocas en cualquier recordsource y ejecutas
el metodo requery
'Me.RecordSource = miSQL
'Me.Requery

MsgBox sSQL
End Sub

Saludos

Loading...