Valores en cuadro de control desplegable

25/07/2003 - 10:18 por Antonio Martínez | Informe spam
Hola grupo tengo la siguiente consulta:

Tengo creado un cuadro de control desplegable con una lista de valores para
elegir, el caso es que el cuadro lo tengo que repetir en una columna de una
tabla y necesito que la lista siempre sea la misma pero si copio el cuadro
de control y cambio el nombre al que tengo definido para tome los datos de
la lista que tengo definida no me deja ponerle el mismo nombre.

¿Como puedo realizar una lista de valores como la que tengo creada y
aplicarla a una columna de desplegables para que todos tomen los valores de
la lista definida sin tener que crear tantas listas como cuadros
desplegables?

El cuadro de control lo tengo creado así porque necesito tener la opción de
introducir texto "a mano"

Adjunto el código, el cuadro se llama Lista2 y necesito que los todos los
cuadros de la columna muestren los mismos valores, no puedo nombrarlos todos
como Lista2 así que serán Lista3...Lista5...Lista.n.

Private Sub Document_Open()
Lista2.Clear
Lista2.Text = " "
Lista2.AddItem "opción1"
Lista2.AddItem "opción2"
Lista2.AddItem "opción3"
Lista2.AddItem "Ducha"End Sub
 

Leer las respuestas

#1 Nilda Beatriz Díaz
26/07/2003 - 18:45 | Informe spam
Ahora cambia lo que se expuso en la primer solución de este caso.
Ya no hay que asignarle ningún nombre al control.
El siguiente código también va en el ThisDocument, Objeto Document, Procedimiento Open del documento.


Private Sub Document_Open()
Dim Lista As Object 'se declara una variable para obtener cada objeto
For Each Lista In ActiveDocument.Content.InlineShapes 'recorriendo los objetos del documento
If Lista.Field.Type = wdFieldOCX Then 'si el objeto es un Cuadro de control
If Lista.Field.OLEFormat.ClassType = "Forms.ComboBox.1" Then 'si es un Cuadro combinado
Lista.Field.OLEFormat.Object.Clear 'limpia la lista
Lista.Field.OLEFormat.Object.Text = "" 'limpia el texto
Lista.Field.OLEFormat.Object.AddItem "Café" 'desde aquí carga la lista
Lista.Field.OLEFormat.Object.AddItem "Azúcar"
Lista.Field.OLEFormat.Object.AddItem "Té"
Lista.Field.OLEFormat.Object.AddItem "Leche"
End If
End If
Next
End Sub


Suerte
Nilda Beatriz Díaz
MS - MVP
Desde el tercer planeta a partir del Sol


"Antonio Martínez" escribió en el mensaje news:%
Hola grupo tengo la siguiente consulta:

Tengo creado un cuadro de control desplegable con una lista de valores para
elegir, el caso es que el cuadro lo tengo que repetir en una columna de una
tabla y necesito que la lista siempre sea la misma pero si copio el cuadro
de control y cambio el nombre al que tengo definido para tome los datos de
la lista que tengo definida no me deja ponerle el mismo nombre.

¿Como puedo realizar una lista de valores como la que tengo creada y
aplicarla a una columna de desplegables para que todos tomen los valores de
la lista definida sin tener que crear tantas listas como cuadros
desplegables?

El cuadro de control lo tengo creado así porque necesito tener la opción de
introducir texto "a mano"

Adjunto el código, el cuadro se llama Lista2 y necesito que los todos los
cuadros de la columna muestren los mismos valores, no puedo nombrarlos todos
como Lista2 así que serán Lista3...Lista5...Lista.n.

Private Sub Document_Open()
Lista2.Clear
Lista2.Text = " "
Lista2.AddItem "opción1"
Lista2.AddItem "opción2"
Lista2.AddItem "opción3"
Lista2.AddItem "Ducha"End Sub

Preguntas similares