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

Excel desde VB consulta

Estas en el tema de Excel desde VB consulta en el foro de Visual Basic clásico en Foros del Web. Este codigo lo saque de esta pagina: http://www.recursosvisualbasic.com.a...l-basic/38.htm Lo modifique minimamente para que el usuario pueda consultar la fila y columna que quiera pero me ...
  #1 (permalink)  
Antiguo 05/08/2009, 05:28
 
Fecha de Ingreso: julio-2007
Mensajes: 79
Antigüedad: 16 años, 9 meses
Puntos: 0
Excel desde VB consulta

Este codigo lo saque de esta pagina:
http://www.recursosvisualbasic.com.a...l-basic/38.htm

Lo modifique minimamente para que el usuario pueda consultar la fila y columna que quiera pero me abre varios excel y me trae problemas. Como logro que este error no se produzca.
El formulario tiene dos Textbox (colunma y linea) un commandbox (para darle buscar) y un label(para mostrar los datos del Excel).Gracias.



'Importante : Agregar la referencia a Micorosft Excel xx object library
'''''''''''''''''''''''''''''''''''''''''''''''''' '''''''''''''''''''''


Private Sub Excel()
'Variable de tipo Aplicación de Excel
Dim objExcel As Excel.Application

'Una variable de tipo Libro de Excel
Dim xLibro As Excel.Workbook
Dim Col As Integer, Fila As Integer

'creamos un nuevo objeto excel
Set objExcel = New Excel.Application

'Usamos el método open para abrir el archivo que está _
en el directorio del programa llamado archivo.xls
Set xLibro = objExcel.Workbooks.Open("C:\archivo.xls")

'Hacemos el Excel Visible
'objExcel.Visible = True

With xLibro

' Hacemos referencia a la Hoja
With .Sheets(1)

'MsgBox .Cells(Val(Text1), Val(Text2))
Label1 = .Cells(Val(Text1), Val(Text2))

'Next

End With
End With

'Eliminamos los objetos si ya no los usamos
Set objExcel = Nothing
Set xLibro = Nothing

End Sub
Private Sub Command1_Click()
'MsgBox Text1 & " " & Text2
Call Excel
End Sub

'Escrito por Ale Cada vez que me da un dato veo en el adminstrador de tareas de windows que me
'abre un Excel por cada consulta como lo puedo soluccionar ya que en las dos lineas:
'Eliminamos los objetos si ya no los usamos
'Set objExcel = Nothing
'Set xLibro = Nothing
'pienso que deberia cerrarse

  #2 (permalink)  
Antiguo 06/08/2009, 09:54
 
Fecha de Ingreso: julio-2002
Ubicación: stgo rec
Mensajes: 438
Antigüedad: 21 años, 9 meses
Puntos: 3
Respuesta: Excel desde VB consulta

Aqui ta , fijate en los comentarios que agregue al codigo

Dim Col As Integer, Fila As Integer
Dim objExcel As Excel.Application 'orden 1
Dim xLibro As Excel.Workbook 'oden 2
Set objExcel = New Excel.Application
Set xLibro = objExcel.Workbooks.Open("C:\archivo.xls")
Label1 = xLibro.Sheets(1).Cells(Val(Text1), Val(Text2))
xLibro.Close 'Si lo abres, debes cerrarlo
Set xLibro = Nothing 'Respetar orden 2
Set objExcel = Nothing 'Respetar orden 1
__________________
Saludos
Leo
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 08:21.