Desde archivo XLS llena grilla
Publicado por Paula (2 intervenciones) el 25/04/2007 21:58:07
Hola,
Tengo un problema al momento de abrir un archivo excel. este es mi procedimiento para llenar la grilla:
Dim Rs As Recordset
On Error Resume Next
If Db1.Name = "" Then
MsgBox "Error : Base de Datos no esta Abierta!", vbInformation
Exit Sub
End If
Set Rs = Db1.OpenRecordset(nombretabla)
If Err <> 0 Then
MsgBox Err.Description
Rs.Close
Exit Sub
End If
If Rs.RecordCount = 0 Then
MsgBox "Tabla no contiene registros!", vbInformation
Exit Sub
End If
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Clear
''''''''''''''''''''''''''
'' CARGA TITULO A GRILLA''
''''''''''''''''''''''''''
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Rows = 1
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Cols = 2
tx_vistaPrevia = ""
Aux = " "
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Row = 0
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Col = 1
For i = 0 To Rs.Fields.Count - 1
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Col = FrmCaptura_nueva_version.MSFlexGrid_Ventas.Col + 1
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Text = Rs.Fields(i).Name
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Cols = FrmCaptura_nueva_version.MSFlexGrid_Ventas.Cols + 1
Next i
'''''''''''''''''''''''''''
'' CARGA DETALLE A GRILLA''
'''''''''''''''''''''''''''
i = 0
While i <= 10000 And Not Rs.EOF
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Rows = FrmCaptura_nueva_version.MSFlexGrid_Ventas.Rows + 1
If FrmCaptura_nueva_version.MSFlexGrid_Ventas.Row = 0 Then
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Row = 1
Else
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Row = i + 1
End If
For X = 0 To Rs.Fields.Count - 1
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Col = X + 1
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Text = Rs.Fields(X).Value
Next X
Rs.MoveNext
i = i + 1
Wend
Rs.Close
El problema es que al momento de llenar en una de las columnas se va a cualquier lado.
Ejemplo :
Archivo =
Nombre apellido ciudad pais
Paula Madsen santiago Chile
Juan Martines santiago chile
Luis Figueroa santiago Chile
Carga a grilla =
Nombre apellido Chile pais
Paula Madsen Chile
Juan Martines santiago
Luis Figueroa santiago Chile
Espero me puedan ayudar, con esta formula u otra.
Segun lo que veo el problema es que el cursor se va a cualquier lado...
Esto Rs.Fields(i).Name no me funciona.
Gracias.
Tengo un problema al momento de abrir un archivo excel. este es mi procedimiento para llenar la grilla:
Dim Rs As Recordset
On Error Resume Next
If Db1.Name = "" Then
MsgBox "Error : Base de Datos no esta Abierta!", vbInformation
Exit Sub
End If
Set Rs = Db1.OpenRecordset(nombretabla)
If Err <> 0 Then
MsgBox Err.Description
Rs.Close
Exit Sub
End If
If Rs.RecordCount = 0 Then
MsgBox "Tabla no contiene registros!", vbInformation
Exit Sub
End If
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Clear
''''''''''''''''''''''''''
'' CARGA TITULO A GRILLA''
''''''''''''''''''''''''''
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Rows = 1
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Cols = 2
tx_vistaPrevia = ""
Aux = " "
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Row = 0
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Col = 1
For i = 0 To Rs.Fields.Count - 1
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Col = FrmCaptura_nueva_version.MSFlexGrid_Ventas.Col + 1
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Text = Rs.Fields(i).Name
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Cols = FrmCaptura_nueva_version.MSFlexGrid_Ventas.Cols + 1
Next i
'''''''''''''''''''''''''''
'' CARGA DETALLE A GRILLA''
'''''''''''''''''''''''''''
i = 0
While i <= 10000 And Not Rs.EOF
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Rows = FrmCaptura_nueva_version.MSFlexGrid_Ventas.Rows + 1
If FrmCaptura_nueva_version.MSFlexGrid_Ventas.Row = 0 Then
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Row = 1
Else
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Row = i + 1
End If
For X = 0 To Rs.Fields.Count - 1
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Col = X + 1
FrmCaptura_nueva_version.MSFlexGrid_Ventas.Text = Rs.Fields(X).Value
Next X
Rs.MoveNext
i = i + 1
Wend
Rs.Close
El problema es que al momento de llenar en una de las columnas se va a cualquier lado.
Ejemplo :
Archivo =
Nombre apellido ciudad pais
Paula Madsen santiago Chile
Juan Martines santiago chile
Luis Figueroa santiago Chile
Carga a grilla =
Nombre apellido Chile pais
Paula Madsen Chile
Juan Martines santiago
Luis Figueroa santiago Chile
Espero me puedan ayudar, con esta formula u otra.
Segun lo que veo el problema es que el cursor se va a cualquier lado...
Esto Rs.Fields(i).Name no me funciona.
Gracias.
Valora esta pregunta


0