llenado de un listbox

20/05/2005 - 17:00 por José A. Castrejón | Informe spam
Hola a todos, estoy empezando a utilizar userforms. quisiera saber como puedo
hacer que un listbox me traiga valores de una hoja dentro del mismo libro o
de otro libro, hasta ahora tengo
ComboBox1.RowSource = "AA1:AA6"
esto me trae los datos de las celdas que estan dentro de la misma hoja en
donde tengo el listbox. ¿como puedo hacer que los datos vengan de otra hoja
dentro del mismo libro, por ejemplo la hoja "productos"?
saludos y gracias

Preguntas similare

Leer las respuestas

#1 Fernando Arroyo
20/05/2005 - 17:20 | Informe spam
Para otra hoja del mismo libro, utiliza la sintaxis

'NombreDeLaHoja'!AA1:AA6

Para una hoja de otro libro, la sintaxis es:

'[NombreDelLibro.xls]NombreDeLaHoja'!AA1:AA6

pero ten en cuenta que el otro libro tiene que estar abierto cuando se ejecute el formulario (en caso contrario, el control quedaría vacío).

Los apóstrofes ' no son imprescindibles salvo que los nombre del libro y/o de la hoja tengan algún espacio. En cualquier caso, no estorban.
Un saludo.


Fernando Arroyo
MS MVP - Excel
www.excelesp.com


"José A. Castrejón" escribió en el mensaje news:
Hola a todos, estoy empezando a utilizar userforms. quisiera saber como puedo
hacer que un listbox me traiga valores de una hoja dentro del mismo libro o
de otro libro, hasta ahora tengo
ComboBox1.RowSource = "AA1:AA6"
esto me trae los datos de las celdas que estan dentro de la misma hoja en
donde tengo el listbox. ¿como puedo hacer que los datos vengan de otra hoja
dentro del mismo libro, por ejemplo la hoja "productos"?
saludos y gracias

Respuesta Responder a este mensaje
#2 José A. Castrejón
20/05/2005 - 20:17 | Informe spam
Gracias por tu ayuda, lo probare y te aviso. Muchas gracias


"Fernando Arroyo" escribió:

Para otra hoja del mismo libro, utiliza la sintaxis

'NombreDeLaHoja'!AA1:AA6

Para una hoja de otro libro, la sintaxis es:

'[NombreDelLibro.xls]NombreDeLaHoja'!AA1:AA6

pero ten en cuenta que el otro libro tiene que estar abierto cuando se ejecute el formulario (en caso contrario, el control quedaría vacío).

Los apóstrofes ' no son imprescindibles salvo que los nombre del libro y/o de la hoja tengan algún espacio. En cualquier caso, no estorban.
Un saludo.


Fernando Arroyo
MS MVP - Excel
www.excelesp.com


"José A. Castrejón" escribió en el mensaje news:
> Hola a todos, estoy empezando a utilizar userforms. quisiera saber como puedo
> hacer que un listbox me traiga valores de una hoja dentro del mismo libro o
> de otro libro, hasta ahora tengo
> ComboBox1.RowSource = "AA1:AA6"
> esto me trae los datos de las celdas que estan dentro de la misma hoja en
> donde tengo el listbox. ¿como puedo hacer que los datos vengan de otra hoja
> dentro del mismo libro, por ejemplo la hoja "productos"?
> saludos y gracias
>

Respuesta Responder a este mensaje
#3 José A. Castrejón
21/05/2005 - 01:05 | Informe spam
Hola de nuevo fernando, ya encontre tu nueva página. Mira ya puse el codigo
que me diste pero no me funciona, transcribo el codigo que tengo para ver si
me puedes decir que tengo mal :

Private Sub ComboBox1_Change()

End Sub

Private Sub ListBox1_Click()


End Sub

Private Sub UserForm1_Activate()
Sheets("MAPA").Select
Range("A1").ClearContents

UserForm1.ComboBox1.Clear

'ComboBox1.RowSource = "AA1:AA6"
'ComboBox1.RowSource = LISTAS!A1: A6
ComboBox1.ControlSource = LISTAS!A1: A6


'ComboBox1.AddItem "Mesa 2"
'ComboBox1.AddItem "Mesa 3"
'ComboBox1.AddItem "Mesa 4"
'ComboBox1.AddItem "Mesa 5"
'ComboBox1.AddItem "Mesa 6"

'ListBox1.ColumnCount = 1
'ListBox1.RowSource = "AA1:AA6"
'ListBox1.ControlSource = "A1"
'Place the ListIndex into cell a6
'ListBox1.BoundColumn = 0



End Sub

Private Sub CommandButton1_Click()
Worksheets("MAPA").Cells(1, 1) = ComboBox1.Value
Unload UserForm1

CierreMesas

End Sub

Como ya te habras dado cuenta quiero substituir los additem por una lista en
la hoja LISTAS del mismo archivo
sdos


"Fernando Arroyo" escribió:

Para otra hoja del mismo libro, utiliza la sintaxis

'NombreDeLaHoja'!AA1:AA6

Para una hoja de otro libro, la sintaxis es:

'[NombreDelLibro.xls]NombreDeLaHoja'!AA1:AA6

pero ten en cuenta que el otro libro tiene que estar abierto cuando se ejecute el formulario (en caso contrario, el control quedaría vacío).

Los apóstrofes ' no son imprescindibles salvo que los nombre del libro y/o de la hoja tengan algún espacio. En cualquier caso, no estorban.
Un saludo.


Fernando Arroyo
MS MVP - Excel
www.excelesp.com


"José A. Castrejón" escribió en el mensaje news:
> Hola a todos, estoy empezando a utilizar userforms. quisiera saber como puedo
> hacer que un listbox me traiga valores de una hoja dentro del mismo libro o
> de otro libro, hasta ahora tengo
> ComboBox1.RowSource = "AA1:AA6"
> esto me trae los datos de las celdas que estan dentro de la misma hoja en
> donde tengo el listbox. ¿como puedo hacer que los datos vengan de otra hoja
> dentro del mismo libro, por ejemplo la hoja "productos"?
> saludos y gracias
>

Respuesta Responder a este mensaje
#4 Fernando Arroyo
21/05/2005 - 09:41 | Informe spam
La propiedad RowSource debe ser una cadena de texto. Intenta:

Private Sub UserForm1_Activate()
Me.ComboBox1.RowSource = "LISTAS!AA1:AA6"
End Sub

Un saludo.


Fernando Arroyo
MS MVP - Excel


"José A. Castrejón" escribió en el mensaje news:
Hola de nuevo fernando, ya encontre tu nueva página. Mira ya puse el codigo
que me diste pero no me funciona, transcribo el codigo que tengo para ver si
me puedes decir que tengo mal :

Private Sub ComboBox1_Change()

End Sub

Private Sub ListBox1_Click()


End Sub

Private Sub UserForm1_Activate()
Sheets("MAPA").Select
Range("A1").ClearContents

UserForm1.ComboBox1.Clear

'ComboBox1.RowSource = "AA1:AA6"
'ComboBox1.RowSource = LISTAS!A1: A6
ComboBox1.ControlSource = LISTAS!A1: A6


'ComboBox1.AddItem "Mesa 2"
'ComboBox1.AddItem "Mesa 3"
'ComboBox1.AddItem "Mesa 4"
'ComboBox1.AddItem "Mesa 5"
'ComboBox1.AddItem "Mesa 6"

'ListBox1.ColumnCount = 1
'ListBox1.RowSource = "AA1:AA6"
'ListBox1.ControlSource = "A1"
'Place the ListIndex into cell a6
'ListBox1.BoundColumn = 0



End Sub

Private Sub CommandButton1_Click()
Worksheets("MAPA").Cells(1, 1) = ComboBox1.Value
Unload UserForm1

CierreMesas

End Sub

Como ya te habras dado cuenta quiero substituir los additem por una lista en
la hoja LISTAS del mismo archivo
sdos


Respuesta Responder a este mensaje
#5 José A. Castrejón
23/05/2005 - 20:05 | Informe spam
Gracias, funciona muy bien.
sdos


"Fernando Arroyo" escribió:

La propiedad RowSource debe ser una cadena de texto. Intenta:

Private Sub UserForm1_Activate()
Me.ComboBox1.RowSource = "LISTAS!AA1:AA6"
End Sub

Un saludo.


Fernando Arroyo
MS MVP - Excel


"José A. Castrejón" escribió en el mensaje news:
> Hola de nuevo fernando, ya encontre tu nueva página. Mira ya puse el codigo
> que me diste pero no me funciona, transcribo el codigo que tengo para ver si
> me puedes decir que tengo mal :
>
> Private Sub ComboBox1_Change()
>
> End Sub
>
> Private Sub ListBox1_Click()
>
>
> End Sub
>
> Private Sub UserForm1_Activate()
> Sheets("MAPA").Select
> Range("A1").ClearContents
>
> UserForm1.ComboBox1.Clear
>
> 'ComboBox1.RowSource = "AA1:AA6"
> 'ComboBox1.RowSource = LISTAS!A1: A6
> ComboBox1.ControlSource = LISTAS!A1: A6
>
>
> 'ComboBox1.AddItem "Mesa 2"
> 'ComboBox1.AddItem "Mesa 3"
> 'ComboBox1.AddItem "Mesa 4"
> 'ComboBox1.AddItem "Mesa 5"
> 'ComboBox1.AddItem "Mesa 6"
>
> 'ListBox1.ColumnCount = 1
> 'ListBox1.RowSource = "AA1:AA6"
> 'ListBox1.ControlSource = "A1"
> 'Place the ListIndex into cell a6
> 'ListBox1.BoundColumn = 0
>
>
>
> End Sub
>
> Private Sub CommandButton1_Click()
> Worksheets("MAPA").Cells(1, 1) = ComboBox1.Value
> Unload UserForm1
>
> CierreMesas
>
> End Sub
>
> Como ya te habras dado cuenta quiero substituir los additem por una lista en
> la hoja LISTAS del mismo archivo
> sdos
>
>


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