** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Listar hojas excel en cuadro lista access
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoListar hojas excel en cuadro lista access

 Responder Responder
Autor
Mensaje
rokoko Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 16/Febrero/2008
Localización: Pamplona
Estado: Sin conexión
Puntos: 1981
Enlace directo a este mensaje Tema: Listar hojas excel en cuadro lista access
    Enviado: 06/Enero/2019 a las 19:27
Buenas y feliz año a todos!!!

Estoy importando datos de una hoja de excel a un tabla access, hasta hay bien.
Con un codigo que utilizo si la hoja esta la primera en el libro excel lo hace perfectamente.

Pero estoy probando otro codigo, el cual funciona bien si le digo el nombre de la hoja excel.
Pero me gustaria poder elegir esas hojas selecionandolas en un cuadro de lista en access.

Como podria listar los nombre de las hojas del excel en un cuadro de lista en access??

Saludos
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 10841
Enlace directo a este mensaje Enviado: 06/Enero/2019 a las 21:29
Entiendo que tendrás el Excel abierto por automatización ... siendo así, el camino para obtener los nombres de las hojas sería:

Cita
Dim Hoja As Object
    For Each Hoja In ActiveWorkbook.Sheets
        Debug.Print Hoja.Name
    Next
 

A partir de aquí cargarlo en un cuadro de lista ... coser y cantar Tongue


Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
rokoko Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 16/Febrero/2008
Localización: Pamplona
Estado: Sin conexión
Puntos: 1981
Enlace directo a este mensaje Enviado: 06/Enero/2019 a las 23:38
Lo de coser y cantar esta fallandoBig smile
Tengo esto, lee las hojas a trabes del bucle, pero lo de pasarlo al cuadro de lista no lo consigo..
'creo un objeto:
    Set objExcel = CreateObject("Excel.Application")

'Lo abro
    Set LIBEXCEL = objExcel.Workbooks.Open("C:\Users\Norco\Desktop\Libro.xls")

Dim Hoja As Object
    'recorro las hojas del libro excel
    For Each Hoja In LIBEXCEL.Sheets
        'Debug.Print Hoja.Name
        MsgBox Hoja.Name
        
    Next
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 10841
Enlace directo a este mensaje Enviado: 07/Enero/2019 a las 09:06
... y para añadirlas a un cuadro de lista:

me.lista.AddItem Hoja.Name
Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
rokoko Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 16/Febrero/2008
Localización: Pamplona
Estado: Sin conexión
Puntos: 1981
Enlace directo a este mensaje Enviado: 07/Enero/2019 a las 10:27
yo volviendome loco con el rowsouce..... La lista hay que ponerla en lista de valores.

Se puede cerrar. Muchas gracias
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 10841
Enlace directo a este mensaje Enviado: 07/Enero/2019 a las 10:57
Podrías hacerlo también con el Rowsource:

Dim Xs as string, Hoja as Object
.
.
For Each Hoja in LIBEXCEL.Sheets
    Xs = Xs & ";" & Hoja.Name
Next
Me.lista.RowSource = mid$(Xs, 2)    'el Mid$ es para quitar el primer ;


OJO, escrito al vuelo.


Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable