amp-web-push-widget button.amp-subscribe { display: inline-flex; align-items: center; border-radius: 5px; border: 0; box-sizing: border-box; margin: 0; padding: 10px 15px; cursor: pointer; outline: none; font-size: 15px; font-weight: 500; background: #4A90E2; margin-top: 7px; color: white; box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.5); -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } .amp-logo amp-img{width:190px} .amp-menu input{display:none;}.amp-menu li.menu-item-has-children ul{display:none;}.amp-menu li{position:relative;display:block;}.amp-menu > li a{display:block;} /* Inline styles */ div.acss138d7{clear:both;}div.acssf5b84{--relposth-columns:3;--relposth-columns_m:2;--relposth-columns_t:2;}div.acssa8a3d{aspect-ratio:1/1;background:transparent no-repeat scroll 0% 0%;height:300px;max-width:300px;}div.acss13836{color:#333333;font-family:Arial;font-size:14px;height:75px;}span.acss47fcd{background:#FFFFFF;color:#000000;}div.acss0f1bf{display:none;}a.acssf23c5{font-size:8pt;}a.acss24ea4{font-size:16.4pt;}a.acss066f0{font-size:22pt;} .ampforwp_wc_shortcode{margin-top: 0;padding:0;display:inline-block;width: 100%;} .ampforwp_wc_shortcode li{position: relative;width:29%; font-size:12px; line-height: 1; float: left;list-style-type: none;margin:2%;} .ampforwp_wc_shortcode .onsale{position: absolute;top: 0;right: 0;background: #ddd;padding: 7px;font-size: 12px;} .single-post .ampforwp_wc_shortcode li amp-img{margin:0} .ampforwp-wc-title{margin: 8px 0px 10px 0px;font-size: 13px;} .ampforwp-wc-price{color:#444} .wc_widgettitle{text-align:center;margin-bottom: 0px;} .ampforwp-wc-price, .ampforwp_wc_star_rating{float:left;margin-right: 10px;} .icon-widgets:before {content: "\e1bd";}.icon-search:before {content: "\e8b6";}.icon-shopping-cart:after {content: "\e8cc";} /******* Paste your Custom CSS in this Editor *******/
En este ejemplo se trata de importar los datos de un archivo de Excel a un Control MS FlexGrid.
Con este ejemplo podemos tener idea de todo lo que podríamos hacer aparte de llenar el grid también se podría guardar en una base de datos.
Para este ejemplo se necesita los siguientes controles:
Para lograr la importación lo primero es seleccionar el archivo de excel usando el control CommonDialog:
Private Sub cmdSeleccionarArchivo_Click()
CommonDialog1.Filter = "Archivos de excel|*.xls|Archivos Excel 2007|*.xlsx"
CommonDialog1.ShowOpen
If CommonDialog1.FileName <> "" Then
txtFileName.Text = CommonDialog1.FileName
Else
txtFileName.Text = ""
End If
End Sub
Al dar clic en el botón de seleccionar archivo lo primero es pasar el filtro al CommonDialog1 para que solo muestre archivos xls o xlsx
Luego se valida que si se seleccionara un archivo.
Para organizar mejor el MSGrid se debe ocultar una columna y darle ancho a las otras y ponerles titulo:
Sub InicializarGrid()
mshGrid.Cols = 6
mshGrid.ColWidth(0) = 0
mshGrid.ColWidth(1) = 900
mshGrid.ColWidth(2) = 2500
mshGrid.ColWidth(3) = 1200
mshGrid.ColWidth(4) = 1500
mshGrid.ColWidth(5) = 1800
mshGrid.TextMatrix(0, 1) = "Código"
mshGrid.TextMatrix(0, 2) = "Nombre"
mshGrid.TextMatrix(0, 3) = "Identificación"
mshGrid.TextMatrix(0, 4) = "Teléfono"
mshGrid.TextMatrix(0, 5) = "Dirección"
End Sub Esta función se llama desde el Load del formulario:
Private Sub Form_Load()
Call InicializarGrid
End Sub
La siguiente parte es procesar el archivo tomando la url del archivo que se selecciono anteriormente.
Sub ImportarArchivo()
If Me.txtFileName.Text = "" Then
MsgBox "Debe seleccionar un archivo", vbExclamation, "Error al Importar "
Exit Sub
End If
Set Excel = CreateObject("Excel.Application")
Set obj_Workbook = Excel.Workbooks.Open(Me.txtFileName.Text)
' -- referencia la Hoja, por defecto la hoja activa
If sSheetName = vbNullString Then
Set obj_Worksheet = obj_Workbook.ActiveSheet
End If
vrNumHojas = Excel.Sheets.Count()
txt = ""
codigo = 0
x = 2 'se lee desde la segunda fila evitando los titulos
fila = 1
mshGrid.Redraw = False
Do While codigo <> ""
Set obj_Worksheet = obj_Workbook.Worksheets(1) 'selecciona la hoja 1
If mshGrid.Rows > 1 Then mshGrid.FixedRows = 1
codigo = obj_Worksheet.Cells(x, 1).Value
nombre = obj_Worksheet.Cells(x, 2).Value
identificacion = obj_Worksheet.Cells(x, 3).Value
telefono = obj_Worksheet.Cells(x, 4).Value
direccion = obj_Worksheet.Cells(x, 5).Value
mshGrid.Rows = mshGrid.Rows + 1
mshGrid.TextMatrix(fila, 1) = codigo
mshGrid.TextMatrix(fila, 2) = nombre
mshGrid.TextMatrix(fila, 3) = identificacion
mshGrid.TextMatrix(fila, 4) = telefono
mshGrid.TextMatrix(fila, 5) = direccion
If fila Mod 2 = 0 Then
For I = 1 To 5
mshGrid.Col = I
mshGrid.CellBackColor = &HFEEEDD
Next I
mshGrid.Row = fila
End If
x = x + 1
fila = fila + 1
Loop
mshGrid.Redraw = True
Set obj_Worksheet = Nothing
Set obj_Workbook = Nothing
Excel.Quit
Set Excel = Nothing
End Sub
Para abrir el archivo de Excel se utiliza una librería de visual basic 6 la cual se le pasa la url del archivo y ya nos devuelve su contenido.
Set Excel = CreateObject(“Excel.Application”) Set obj_Workbook = Excel.Workbooks.Open(Me.txtFileName.Text)
Luego activamos la hoja uno para recorrerla
Set obj_Worksheet = obj_Workbook.Worksheets(1)
Y se lee cada columna del archivo
codigo = obj_Worksheet.Cells(x, 1).Value
Y luego se le pasa al Grid
mshGrid.Rows = mshGrid.Rows + 1 aca se añade un fila mas al grid
mshGrid.TextMatrix(fila, 1) = codigo
La funcion ImportarArchivo() se llama desde el botón cmdCargar
Private Sub cmdCargar_Click()
Call ImportarArchivo
End Sub El código del ejemplo lo puedes descargar desde: Importar Excel a MshFlexGrid (884 descargas )
Saludos, en este tutorial aprenderás a integrar tu aplicación de Visual Basic 6 con un…
Recientemente, muchos usuarios de Hotmail (ahora Outlook.com) han reportado un error al intentar iniciar sesión…
En este proyecto, vamos a desarrollar una calculadora sencilla usando Visual Basic 6, que permite…
6 de septiembre de 2024 - La demanda de desarrolladores de software sigue en aumento,…
En un movimiento histórico, la Unión Europea ha aprobado la primera ley de inteligencia artificial…
¿Sigues trabajando con Visual Basic 6 y necesitas una forma eficiente de acceder a tus…
Este sitio utiliza cookies desea activarlas
Leave a Comment