Excel en Visual Basic:
El programa debera mostrar una tabla Excel en Visual Basic. Dentro del programa podremos modificar la tabla como por ejemplo añadir nuevas reistros o eliminar registros segun lo quiera el usuario.
Pasos para crear el programa:
1. Tendremos que poner un DataGrid para poder visualizar la tabla de Excel cuando iniciemos el programa.
2. Pondremos un CommandButton para interactuar con la tabla.
3. Pondremos 4 Textbox para poner los rangos y la tabla no seleccionara los rango puestos.
4. Tendremos que poner un codigo paa qu el programa funcione.
Texto planoImprimir
Option Explicit
Public Sub Importar_Excel( _
Libro As String, _
hoja As String, _
Optional rango As String = "")
Dim conexion As ADODB.Connection, rs As ADODB.Recordset
Set conexion = New ADODB.Connection
conexion.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Libro & _
";Extended Properties=""Excel 8.0;HDR=Yes;"""
' Nuevo recordset
Set rs = New ADODB.Recordset
With rs
.CursorLocation = adUseClient
.CursorType = adOpenStatic
.LockType = adLockOptimistic
End With
If rango <> ":" Then
hoja = hoja & "$" & rango
End If
rs.Open "SELECT * FROM [" & hoja & "]", conexion, , , adCmdText
'Mostramos los datos en el datagrid
Set DataGrid1.DataSource = rs
End Sub
Private Sub Command1_Click()
Dim rango As String, hoja As String, ruta As String
ruta = Text1 'ruta del archivo excel
rango = Text2 & ":" & Text3 'Rango de datos (opcional)
hoja = Text4 'Nombre de la hoja
Importar_Excel ruta, hoja, rango
End Sub
Pasos para crear el programa:
1. Tendremos que poner un DataGrid para poder visualizar la tabla de Excel cuando iniciemos el programa.
2. Pondremos un CommandButton para interactuar con la tabla.
3. Pondremos 4 Textbox para poner los rangos y la tabla no seleccionara los rango puestos.
4. Tendremos que poner un codigo paa qu el programa funcione.
Texto planoImprimir
Option Explicit
Public Sub Importar_Excel( _
Libro As String, _
hoja As String, _
Optional rango As String = "")
Dim conexion As ADODB.Connection, rs As ADODB.Recordset
Set conexion = New ADODB.Connection
conexion.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Libro & _
";Extended Properties=""Excel 8.0;HDR=Yes;"""
' Nuevo recordset
Set rs = New ADODB.Recordset
With rs
.CursorLocation = adUseClient
.CursorType = adOpenStatic
.LockType = adLockOptimistic
End With
If rango <> ":" Then
hoja = hoja & "$" & rango
End If
rs.Open "SELECT * FROM [" & hoja & "]", conexion, , , adCmdText
'Mostramos los datos en el datagrid
Set DataGrid1.DataSource = rs
End Sub
Private Sub Command1_Click()
Dim rango As String, hoja As String, ruta As String
ruta = Text1 'ruta del archivo excel
rango = Text2 & ":" & Text3 'Rango de datos (opcional)
hoja = Text4 'Nombre de la hoja
Importar_Excel ruta, hoja, rango
End Sub
5. Finalmente el prgrama ebera quedar asi:
