Ver Mensaje Individual
  #2 (permalink)  
Antiguo 26/10/2008, 04:02
Avellaneda
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 17 años, 3 meses
Puntos: 37
Respuesta: Indicar Rango de Celdas de un Libro en Excel a VB 6.0

Cita:
Iniciado por calet84 Ver Mensaje
Hola amigos :
tengo una un problema que resolver al momento de importar datos desde Excel a VB 6.0 en un Grid.

todo esta bien pero me falta espeficicar el rago de celdas de una de una hoja de un libro por ejemplo
solo las celdas que comiencen en la
columna (C11:F11)
fila (C11:C30)
donde puede variar las filas como fila (C11:C37) o fila (C11:C40)
aqui esta el codigo que he desarrollado
desde vb 6.0
...

Gracias de Antemano.
Hola, creo que hay una forma mas sencilla de mostrar un rango de celdas de una hoja Excel en un control Grid de VB, y es haciendo una conexión ADO directa al Libro Excel y seleccionando el rango:

Código:
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset

Private Sub Form_Load()
Set cn = New ADODB.Connection
With cn
    .Provider = "Microsoft.Jet.OLEDB.4.0"
    .ConnectionString = "Data Source= " & App.Path & "/Libro1.xls;" & _
            "Extended Properties=Excel 8.0;"
    .CursorLocation = adUseClient
    .Open
End With
End Sub

Private Sub Command1_Click()
ObtenerRango "Hoja1", "A1:C15" ' mostrar desde 1ª columna, 1ª fila hasta 3ª columna, 15ª fila'ObtenerRango "Hoja1" <-- muestra la hoja completa
End Sub

Private Sub ObtenerRango(ByVal xHoja As String, Optional xRango As String = "")
    Set rs = New ADODB.Recordset
    Dim sql As String
    sql = "SELECT * FROM [" & xHoja & "$" & xRango & "]"
    rs.Open sql, cn, adOpenDynamic, adLockOptimistic
    Set DataGrid1.DataSource = rs
End Sub
Adecúa los datos marcados en rojo a los tuyos.