Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

VBA - Importar datos de hoja Excel

Estas en el tema de VBA - Importar datos de hoja Excel en el foro de Visual Basic clásico en Foros del Web. Buenas a todos! Una vez más, recurro a vuestra sabiduría para solucionar un problema que tengo con un formulario en Access. La pregunta es facil ...
  #1 (permalink)  
Antiguo 07/11/2008, 06:45
uen
 
Fecha de Ingreso: octubre-2003
Ubicación: A Coruña
Mensajes: 55
Antigüedad: 20 años, 6 meses
Puntos: 0
Pregunta VBA - Importar datos de hoja Excel

Buenas a todos!

Una vez más, recurro a vuestra sabiduría para solucionar un problema que tengo con un formulario en Access.

La pregunta es facil aunque compleja.

¿Es posible, insertar en una etiqueta/textbox de Access, los datos de una celda de un archivo de Excel?Es decir, como si usasemos un archivo de excel como base de datos, sería posible a través de código en Visual Basic, leer una hoja de un libro de excel, y los datos de una determinada celda, plasmarlos en un textbox o etiqueta en un formulario de Access?

Necesito esto, porque tengo un archivo de Excel que se actualiza casi diariamente con usuarios y contraseñas. Entonces quería que al abrir mi formulario de una base de datos de acces, recogiera los datos que hay en ese momento en el Excel.

Muchas gracias a todos por vuestras respuestas!!
__________________
We Create, They Destroy Me.
  #2 (permalink)  
Antiguo 07/11/2008, 07:01
ebu
 
Fecha de Ingreso: noviembre-2008
Mensajes: 153
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: VBA - Importar datos de hoja Excel

Hola uen!
hace poco q me he adentrado en el mundo de vba, pero lo poco q se lo comparto contigo.
Has probado con:

ActiveCell.Offset(0, 1).Select
TextBox1 = ActiveCell

espero q te sirva de algo!
  #3 (permalink)  
Antiguo 07/11/2008, 07:34
uen
 
Fecha de Ingreso: octubre-2003
Ubicación: A Coruña
Mensajes: 55
Antigüedad: 20 años, 6 meses
Puntos: 0
Respuesta: VBA - Importar datos de hoja Excel

Muchas gracias por la contestacion ebu,

Aunque imagino que antes habría que abrir con algún comando la base de datos y elegir el rango de las celgas o algo así no?

Pregunto, pero no tengo ni idea jaja

Gracias de nuevo, un saludo
__________________
We Create, They Destroy Me.
  #4 (permalink)  
Antiguo 07/11/2008, 07:39
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: VBA - Importar datos de hoja Excel

Efectivamente, no sé si desde Access hay alguna forma más simple, pero se podría hacer algo como esto:
Código vb:
Ver original
  1. Dim xlsApp As Object
  2. Dim xlsBook As Object
  3. Set xlsApp = CreateObject("Excel.Application") 'Crea una instancia de la aplicación Excel
  4. Set xlsBook = xlsApp.WorkBooks.Open("C:\archivo.xls") 'Abre el libro especificado
  5. TextBox1 = xlsBook.Worksheets("Hoja").Range("A1") 'Coloca en TextBox1 el valor de la celda A1 de la Hoja "Hoja"
  6. xlsBook.Close 'Cierra el libro
  7. Set xlsBook = Nothing 'Destruye el objeto
  8. xlsApp.Quit 'Cierra la aplicación
  9. Set xlsApp = Nothing 'Destruye el objeto
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 07/11/2008, 08:04
ebu
 
Fecha de Ingreso: noviembre-2008
Mensajes: 153
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: VBA - Importar datos de hoja Excel

gracias x la aclaracion david!
todos los dias se aprende algo nuevo!!
  #6 (permalink)  
Antiguo 10/11/2008, 03:27
uen
 
Fecha de Ingreso: octubre-2003
Ubicación: A Coruña
Mensajes: 55
Antigüedad: 20 años, 6 meses
Puntos: 0
Respuesta: VBA - Importar datos de hoja Excel

Mil gracias David el Grande!! me ha servido a la perfección, como tu nombre indica, eres Grande!! jaja. En serio, muchisimas gracias.

Aprovechando... si esto quiero ejecutarlo nada más abrir el formulario, bastaría con ponerlo en el "form load" y listo??

Saludos y muchas gracias de nuevo a todos!
__________________
We Create, They Destroy Me.
  #7 (permalink)  
Antiguo 10/11/2008, 08:02
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: VBA - Importar datos de hoja Excel

Sí, basta con ponerlo en el evento Load de la ventana.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #8 (permalink)  
Antiguo 21/11/2008, 04:35
ebu
 
Fecha de Ingreso: noviembre-2008
Mensajes: 153
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: VBA - Importar datos de hoja Excel

Cita:
Iniciado por David el Grande Ver Mensaje
Efectivamente, no sé si desde Access hay alguna forma más simple, pero se podría hacer algo como esto:
Código vb:
Ver original
  1. Dim xlsApp As Object
  2. Dim xlsBook As Object
  3. Set xlsApp = CreateObject("Excel.Application") 'Crea una instancia de la aplicación Excel
  4. Set xlsBook = xlsApp.WorkBooks.Open("C:\archivo.xls") 'Abre el libro especificado
  5. TextBox1 = xlsBook.Worksheets("Hoja").Range("A1") 'Coloca en TextBox1 el valor de la celda A1 de la Hoja "Hoja"
  6. xlsBook.Close 'Cierra el libro
  7. Set xlsBook = Nothing 'Destruye el objeto
  8. xlsApp.Quit 'Cierra la aplicación
  9. Set xlsApp = Nothing 'Destruye el objeto

hola buenas, recuperando este tema, recurro a ustedes de nuevo:

quiero coger un nombre desde una hoja excel. el problema es q programo en el visual basic editor de la misma hoja excel. he probado con este codigo pero cada vez q lo ejecuto se me abre 'internamente' (solo lo puedo ver en el administrador de tareas/procesos) la misma hoja excel.
eso sucede x q estoy creando la aplicacion de excel y abriendo un documento xq ya esta activo. mi duda es, como llamo al excel para q me coga el nombre??

gracias x adelantado!

Última edición por ebu; 21/11/2008 a las 06:53
  #9 (permalink)  
Antiguo 21/11/2008, 06:48
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: VBA - Importar datos de hoja Excel

¿Eso sería en VBA de Excel?. Porque si es así no necesitas realizar todo ese proceso, ya tienes abierto el libro, así que puedes manejarlo sin problema con el objeto ThisWorkBook.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #10 (permalink)  
Antiguo 21/11/2008, 07:10
ebu
 
Fecha de Ingreso: noviembre-2008
Mensajes: 153
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: VBA - Importar datos de hoja Excel

Cita:
Iniciado por David el Grande Ver Mensaje
¿Eso sería en VBA de Excel?. Porque si es así no necesitas realizar todo ese proceso, ya tienes abierto el libro, así que puedes manejarlo sin problema con el objeto ThisWorkBook.
si, asi es.
no he caido hasta q he grabado una macro y he visto q se referia al excel sin abrir la aplicacion antes.
problema solucionado con un simple:
dim a as string
a=Range("A1").FormulaR1C1

gracias!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:47.