0% encontró este documento útil (0 votos)
12 vistas4 páginas

Importar Excel a FlexGrid en VB

Este documento describe cómo importar datos de una hoja de cálculo Excel a un control FlexGrid de Visual Basic, utilizando objetos de Excel para leer las celdas, filas y columnas de la hoja de cálculo y cargar los valores en el FlexGrid.

Cargado por

Luis Fernando
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOC, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
12 vistas4 páginas

Importar Excel a FlexGrid en VB

Este documento describe cómo importar datos de una hoja de cálculo Excel a un control FlexGrid de Visual Basic, utilizando objetos de Excel para leer las celdas, filas y columnas de la hoja de cálculo y cargar los valores en el FlexGrid.

Cargado por

Luis Fernando
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOC, PDF, TXT o lee en línea desde Scribd

[Link]

htm

Option Explicit

' \\ -- Autor :

Luciano Lodola -- [Link]

' ---------------------------------------------------------------------------------

' -- Variables para acceder a la hoja excel


Private obj_Excel

As Object

Private obj_Workbook

As Object

Private obj_Worksheet As Object

' ---------------------------------------------------------------------------------' \\ -- Inicio


' ---------------------------------------------------------------------------------Private Sub Form_Load()
[Link] = " Importar Excel a FlexGrid "
[Link] = " Importar a Flexgrid "
' -- Configurar el Grid
With MSFlexGrid1
.Cols = 10
.FixedCols = 0
End With
End Sub
' ---------------------------------------------------------------------------------' \\ -- Fin

' ---------------------------------------------------------------------------------Private Sub Form_Unload(Cancel As Integer)


Call Descargar
End Sub

' ---------------------------------------------------------------------------------' \\ -- Funcin para leer los datos del Excel y cargarlos en el Flex
' ---------------------------------------------------------------------------------Private Sub Excel_FlexGrid(sPath As String, FlexGrid As Object, Filas As
Integer, Columnas As Integer, Optional sSheetName As String = vbNullString)

Dim i As Long
Dim n As Long

On Error GoTo error_sub


' -- Comproba si existe l archivo
If Len(Dir(sPath)) = 0 Then
MsgBox "No se ha encontrado el archivo: " & sPath, vbCritical
Exit Sub
End If

[Link] = vbHourglass
' -- crea rnueva instancia de Excel
Set obj_Excel = CreateObject("[Link]")
'obj_Excel.Visible = True

' -- Abrir el libro


Set obj_Workbook = obj_Excel.[Link](sPath)
' -- referencia la Hoja, por defecto la hoja activa

If sSheetName = vbNullString Then


Set obj_Worksheet = obj_Workbook.ActiveSheet
Else
Set obj_Worksheet = obj_Workbook.Sheets(sSheetName)
End If

' -- Setear Grid


With MSFlexGrid1
' -- Especificar la cantidad de filas y columnas
'.Cols = Columnas
.Rows = Filas
' -- Recorrer las filas del FlexGrid para agregar los datos
For i = 1 To .Rows - 1
' -- Establecer la fila activa
.Row = i
' -- Recorrer las columnas del FlexGrid
For n = 0 To .Cols - 1
' -- Establecer columna activa
.Col = n
' -- Asignar a la celda del Flex el contenido de la celda del excel
.Text = obj_Worksheet.Cells(i + 1, n + 1).Value
Next
Next
End With
' -- Cerrar libro
obj_Workbook.Close
' -- Cerrar Excel
obj_Excel.quit

' -- Descargar objetos para liberar recursos


Call Descargar
' -- Errores
Exit Sub
error_sub:
MsgBox [Link]
Call Descargar
[Link] = vbDefault
End Sub
' ---------------------------------------------------------------------------------' \\ -- Funcin para descargar los objetos
' ---------------------------------------------------------------------------------Private Sub Descargar()
On Local Error Resume Next
Set obj_Workbook = Nothing
Set obj_Excel = Nothing
Set obj_Worksheet = Nothing
[Link] = vbDefault
End Sub
' ---------------------------------------------------------------------------------' \\ -- Botn para leer los datos del libro e importarlos al Grid
' ---------------------------------------------------------------------------------Private Sub Command1_Click()
Call Excel_FlexGrid("c:\[Link]", MSFlexGrid1, 20, 5, "Sheet1")
End Sub

También podría gustarte