La Web del Programador: Comunidad de Programadores
 
    Pregunta:  1117 - CAPTURAR CELDAS DE EXCEL
Autor:  CarlitosP
Como podría yo hacer que VB5 me tome el contenido de una celda específica de una hoja de cálculo Excel 97 y mostrarlo en una Textbox por ejemplo,pero de forma"interna" (no copy-paste).Y viceversa, es decir, un valor en un control de VB5 pasarlo a una celda o rango específicos en Excel. Gracias por su colaboración.

  Respuesta:  Freddy Espinoza
Private Sub Proceso_ReadExcel()
Dim vbLine As Integer, X As Integer, vbOrden As Integer
Dim vbSigue As Boolean
Dim vbRow As Integer
Set vbAplExc = New Excel.Application
Frame3.Caption = "Exportando datos desde Archivo Excel...."
cmdControl1(2).Enabled = False
vbAplExc.Application.Visible = False
vbAplExc.Workbooks.Open (cmAbre.FileName)
If Val(vbAplExc.Range("B4").Value) <= 0 Then
MsgBox "El formato del archivo " & cmAbre.FileName & ", es inválido", vbCritical
Exit Sub
End If
prg.Min = 0
prg.Max = vbAplExc.Range("B4").Value
ReDim vbOrdenes(vbAplExc.Range("B4").Value)
vbRow = 6 + vbAplExc.Range("B4").Value
X = 1
With vbAplExc
For vbLine = 7 To vbRow
vbOrdenes(X).vbCodigo = .Cells(vbLine, 1).Value
vbOrdenes(X).vbCantidad = .Cells(vbLine, 2).Value
vbOrdenes(X).vbFecha = Format(.Cells(vbLine, 3).Value, "dd-mm-yyyy")
vbOrdenes(X).VbUmedida = Trim(.Cells(vbLine, 4).Value)
vbOrdenes(X).vbCentro = Trim(.Cells(vbLine, 5).Value)
X = X + 1
Next
vbFecha = Format(.Cells(3, 2).Value, "dd-mm-yyyy")
End With
Consul = "select ord_num from orden_trabajo order by ord_num desc"
Set Rst1 = EterBase.OpenRecordset(Consul, dbOpenDynaset)
If (Rst1.EOF And Rst1.BOF) Then
vbOrden = 1
Else
vbOrden = Rst1!ord_num
End If
Rst1.Close
prg.Visible = True
For X = 1 To vbAplExc.Range("B4").Val

  Respuesta:  Rasta X
Sub Form_Load( )

workbooks.Open ("c:\prueba.xls")
workbooks("prueba.xls").Activate
workbooks("prueba.xls").Sheets("Hoja1").Activate

´colocar un textbox en el form
textbox1.text = Cells(1, 1)

End Sub

  Respuesta:  Leonardo Augusto Cepeda Cuervo
Lo priemro que tienes que hacer, es abrir el archivo de excel, esto lo logras mediante la siguiente instruccion:

Workbooks.Open "C:users.xls"

luego debes activar el documento para poder utilizar propiedades de el objeto Cells. Esto se hace mediante la siguiente instruccion:

Workbooks("users.xls").Activate

ahora si desea activar un libro específico de ese archivo la instruccion es:

Workbooks("users.xls").Workshee("libro1").Activate

ahora ya te puedes tener acceso a las celdas de el archivo en excel. Esto se hace mediante la propiedad Cells. De la siguiente manera.

valorcelda = Cells(fila,columna).value
o visceversa.

Espero haberte podido ayudar.

Atentamente

Leonardo Cepeda
Ing.Sistemas
Uniandes - Bogota