Discussion:
Listindex
(demasiado antiguo para responder)
Olga Yaneth
2007-05-14 20:11:04 UTC
Permalink
Hola a ***@s. Tengo el siguiente código donde LST_TIEMPOS es un cuadro de
lista dentro del cual deseo buscar un elemento específico almacenado en
Actividad:

For I = 0 To Me.LST_TIEMPOS.ListCount - 1
If Actividad = Me.LST_TIEMPOS.Column(0, I) Then
Me.LST_TIEMPOS.ListIndex = I
Exit For
End If
Next I

El problema es que me arroja el siguiente error:

"Se ha producido el error '7777' en tiempo de ejecución: Ha usado la
propiedad ListIndex incorrectamente."

No he encontrado en internet ninguna ayuda sobre este error... Alguna idea?
En general me doy cuenta que en ningún lado me permite utilizar
objeto.listindex = valor ya que genera error...

Gracias por la ayuda!
Patxi Sanz
2007-05-15 15:27:23 UTC
Permalink
Hola Olga:

La propiedad ListIndex es de sólo lectura y, por tanto, no puedes asignarle
un valor.

Si la columna dependiente de tu cuadro de lista es la primera, y tiene el
valor que aparece en Actividad, el código para seleccionar el elemento es
más sencillo:

Me.LST_TIEMPOS = Actividad
--
Un saludo,


Patxi Sanz
patxisanz[ARROBA]yahoo[PUNTO]es
Tudela (NA)
Olga Yaneth
2007-05-23 16:37:00 UTC
Permalink
Hola, gracias por tu respuesta, pero la situación es esta. En el cuadro de
lista tengo dos columnas que indican la actividad y la fecha, por ejemplo

Actividad1 1-ene-07
Actividad1 2-ene-07
Actividad1 3-ene-07
Actividad2 1-ene-07
Actividad2 2-ene-07
Actividad2 3-ene-07

No existe una llave principal que identifique de manera única una actividad
en una fecha determinada. La columna dependiente es la primera, pero como en
el ejemplo, el valor en ella se puede repetir. Tu código Me.LST_TIEMPOS =
Actividad siempre me selecciona el primer registro de la actividad pero deseo
buscar uno específico para una fecha, por ejemplo seleccionar la Actividad2
del 2 de enero de 2007. Cómo puedo hacerlo, entonces?
Post by Patxi Sanz
La propiedad ListIndex es de sólo lectura y, por tanto, no puedes asignarle
un valor.
Si la columna dependiente de tu cuadro de lista es la primera, y tiene el
valor que aparece en Actividad, el código para seleccionar el elemento es
Me.LST_TIEMPOS = Actividad
--
Un saludo,
Patxi Sanz
patxisanz[ARROBA]yahoo[PUNTO]es
Tudela (NA)
Patxi Sanz
2007-05-23 18:31:22 UTC
Permalink
Hola Olga:

Puedes usar la propiedad Selected, para seleccionar una fila en concreto:

Me.LST_TIEMPOS.Selected(4) = True

Y que en tu código quedaría más o menos así:

For I = 0 To Me.LST_TIEMPOS.ListCount - 1
If Actividad = Me.LST_TIEMPOS.Column(0, I) Then
Me.LST_TIEMPOS.Selected(I) = True
Exit For
End If
Next
--
Un saludo,


Patxi Sanz
patxisanz[ARROBA]yahoo[PUNTO]es
Tudela (NA)
Loading...